Beschikbare GitHub Actions voor Microsoft Power Platform-ontwikkeling
GitHub-acties voor Microsoft Power Platform worden in de volgende secties beschreven. Daarnaast worden ook voorbeelden van GitHub-workflows getoond. Voor meer informatie over GitHub-acties en hoe u deze kunt downloaden, gaat u naar GitHub-acties voor Microsoft Power Platform.
Referenties configureren voor gebruik met GitHub-acties met Microsoft Power Platform
Voor veel van de acties moet u verbinding maken met een Microsoft Dataverse-omgeving. U kunt referenties voor service-principals of gebruikers als geheimen toevoegen aan uw GitHub-opslagplaats en deze vervolgens in uw werkstromen gebruiken.
Zie Versleutelde geheimen voor informatie over het instellen van geheimen in GitHub
Zie DevOps Build-tools voor informatie over het instellen van verificatie van de service-principal voor Microsoft Power Platform
Eenmaal geconfigureerd kunt u de service-principal aanroepen vanuit uw actiescripts.
Parameters om in uw GitHub-actiescript te te definiëren als omgevingsvariabelen:
- Toepassings-id zoals
WF_APPLICATION_ID:<your application id>
- Tenant-id zoals
WF_TENANT_ID:<your tenant id>
Het clientgeheim wordt toegevoegd en opgeslagen als een GitHub-geheim en er wordt vanuit de werkstroom naar verwezen met een parameter zoals: client secret: ${{secrets.CLIENT_SECRET_GITHUB_ACTIONS}}
Help-taken
De beschikbare helpertaak wordt hieronder beschreven.
actions-install
Wanneer een GitHub Actions-werkstroom een installatie van Power Platform-CLI in de context van een runner en er een time-outfout optreedt, moet u versie 1 (@v1) gebruiken met een extra actie (actions-install
), zoals hieronder.
Belangrijk
- Het gebruik van versie 1 (@v1) kan leiden tot updates van bestaande GitHub Actions die ertoe kunnen leiden dat de huidige werkstromen worden bijgewerkt.
- U moet de taak Power Platform Tools installeren als eerste taak in uw werkstroom uitvoeren voorafgaand aan andere GitHub Actions voor Power Platform.
jobs:
builds:
runs-on: windows-latest # alternate runner OS is: ubuntu-latest
steps:
- name: Install Power Platform Tools
uses: microsoft/powerplatform-actions/actions-install@v1
- name: Export Solution
uses: microsoft/powerplatform-actions/export-solution@v1
with:
environment-url: 'https://myenv.crm.dynamics.com'
user-name: 'me@myenv.onmicrosoft.com'
password-secret: ${{ secrets.MYPASSWORD }}
solution-name: aSolution
solution-output-file: 'aSolution.zip'
working-directory: 'out'
U kunt aanvullende voorbeelden van GitHub Actions vinden in Power Platform-acties.
whoAmI
Verifieert de serviceverbinding door verbinding te maken met de service en een WhoAmI
-aanvraag [SDK/Web-API]. Deze taak kan handig zijn om vroeg in uw GitHub-werkstroom op te nemen, om de connectiviteit te verifiëren voordat de verwerking begint.
Parameter | Beschrijving |
---|---|
environment-url | De URL voor de omgeving waarmee u verbinding maakt. |
user-name | De gebruikersnaam van het account waarmee u verbinding maakt. |
password-secret | Het wachtwoord voor user-name. GitHub-wachtwoorden zijn gedefinieerd in Instellingen onder Geheimen. U kunt een geheim niet meer ophalen nadat het is gedefinieerd en opgeslagen. |
app-id | De toepassings-id voor verificatie. Deze parameter is verplicht bij verificatie met Service Principal-referenties. |
client-secret | Het clientgeheim dat wordt gebruikt om de GitHub-pijplijn te verifiëren. Deze parameter is verplicht bij verificatie met Service Principal-referenties. |
tenant-id | De tenant-id voor verificatie met app-id en client-secret . |
Oplossingstaken
Deze taken voeren acties uit voor oplossingen en omvatten het volgende.
import-solution
Importeert een oplossing in een doelomgeving.
Parameter | Beschrijving |
---|---|
environment-url | (Vereist) De URL voor de doelomgeving waarin u de oplossing wilt importeren (bijvoorbeeld https://YourOrg.crm.dynamics.com ). |
user-name | (Vereist) Als u gebruikersnaam-/wachtwoordverificatie gebruikt, de gebruikersnaam van het account waarmee u verbinding maakt. |
password-secret | (Vereist) Als u gebruikersnaam-/wachtwoordverificatie gebruikt, het wachtwoord voor het account waarmee u verbinding maakt. |
solution-file | (Vereist) Het pad en de naam van het oplossingsbestand dat u wilt importeren. |
app-id | De toepassings-id voor verificatie. Deze parameter is verplicht bij verificatie met Service Principal-referenties. |
client-secret | Het clientgeheim dat wordt gebruikt om de GitHub-pijplijn te verifiëren. Deze parameter is verplicht bij verificatie met Service Principal-referenties. |
tenant-id | De tenant-id voor verificatie met app-id en client-secret . |
export-solution
Exporteert een oplossing vanuit een bronomgeving.
Parameter | Beschrijving |
---|---|
environment-url | (Vereist) De URL voor de omgeving waaruit u de oplossing wilt exporteren (bijvoorbeeld https://YourOrg.crm.dynamics.com ). |
user-name | (Vereist) Als u gebruikersnaam-/wachtwoordverificatie gebruikt, de gebruikersnaam van het account waarmee u verbinding maakt. |
password-secret | (Vereist) Als u gebruikersnaam-/wachtwoordverificatie gebruikt, het wachtwoord voor user-name. GitHub-wachtwoorden zijn gedefinieerd in Instellingen onder Geheimen. U kunt een geheim niet meer ophalen nadat het is gedefinieerd en opgeslagen. |
app-id | De toepassings-id voor verificatie. Deze parameter is verplicht bij verificatie met Service Principal-referenties. |
client-secret | Het clientgeheim dat wordt gebruikt om de GitHub-pijplijn te verifiëren. Deze parameter is verplicht bij verificatie met Service Principal-referenties. |
tenant-id | De tenant-id voor verificatie met app-id en client-secret . |
solution-name | (Vereist) De naam van de te exporteren oplossing. Gebruik altijd de naam van de oplossing, niet de weergavenaam. |
solution-output-file | (Vereist) Het pad en de naam van het bestand solution.zip om uit de bronomgeving te exporteren. |
managed | (Vereist) Stel in op waar om te exporteren als een beheerde oplossing; de standaard (onwaar) is om te exporteren als een onbeheerde oplossing. |
unpack-solution
Neemt een gecomprimeerd oplossingsbestand en pakt dit uit in meerdere XML-bestanden en andere bestanden, zodat deze bestanden eenvoudiger kunnen worden gelezen en beheerd door een bronbeheersysteem.
Parameter | Beschrijving |
---|---|
solution-file | (Vereist) Het pad en de bestandsnaam van het bestand solution.zip dat u wilt uitpakken. |
solution-folder | (Vereist) Het pad en de doelmap waarin u de oplossing wilt uitpakken. |
solution-type | (Vereist) Het type oplossing dat u wilt uitpakken. Opties zijn onder meer: Onbeheerd (aanbevolen), Beheerd en Beide. |
pack-solution
Hiermee wordt een oplossing verpakt die wordt weergegeven in bronbeheer in het bestand solution.zip, dat in een andere omgeving kan worden geïmporteerd.
Parameter | Beschrijving |
---|---|
solution-file | (Vereist) Het pad en de bestandsnaam van het solution.zip-bestand waarin de oplossing moet worden verpakt (bijvoorbeeld out/CI/ALMLab.zip). |
solution-folder | (Vereist) Het pad en de bronmap van de in te pakken oplossing. |
solution-type | (Optioneel) Het type oplossing voor het verpakken. Opties zijn onder meer: Onbeheerd (aanbevolen), Beheerd en Beide. |
publish-solution
Hiermee publiceert u de oplossingsaanpassingen.
Parameter | Beschrijving |
---|---|
environment-url | (Vereist) De URL voor de omgeving waarin u de oplossing wilt publiceren (bijvoorbeeld https://YourOrg.crm.dynamics.com ). |
user-name | (Vereist) Als u gebruikersnaam-/wachtwoordverificatie gebruikt, de gebruikersnaam van het account waarmee u verbinding maakt. |
password-secret | (Vereist) Als u gebruikersnaam-/wachtwoordverificatie gebruikt, het wachtwoord voor het account waarmee u verbinding maakt. |
solution-file | (Vereist) Het pad en de naam van het oplossingsbestand dat u wilt importeren. |
app-id | De toepassings-id voor verificatie. Deze parameter is verplicht bij verificatie met Service Principal-referenties. |
client-secret | Het clientgeheim dat wordt gebruikt om de GitHub-pijplijn te verifiëren. Deze parameter is verplicht bij verificatie met Service Principal-referenties. |
tenant-id | De tenant-id voor verificatie met app-id en client-secret . |
clone-solution
Hiermee kloont u de oplossing voor een bepaalde omgeving.
Parameter | Beschrijving |
---|---|
environment-url | (Vereist) De URL voor de omgeving waaruit u de oplossing wilt klonen (bijvoorbeeld https://YourOrg.crm.dynamics.com ). |
user-name | (Vereist) Als u gebruikersnaam-/wachtwoordverificatie gebruikt, de gebruikersnaam van het account waarmee u verbinding maakt. |
password-secret | (Vereist) Als u gebruikersnaam-/wachtwoordverificatie gebruikt, het wachtwoord voor het account waarmee u verbinding maakt. |
solution-file | (Vereist) Het pad en de naam van het oplossingsbestand dat u wilt importeren. |
app-id | De toepassings-id voor verificatie. Deze parameter is verplicht bij verificatie met Service Principal-referenties. |
client-secret | Het clientgeheim dat wordt gebruikt om de GitHub-pijplijn te verifiëren. Deze parameter is verplicht bij verificatie met Service Principal-referenties. |
tenant-id | De tenant-id voor verificatie met app-id en client-secret . |
solution-name | (Vereist) Het pad en de naam van het solution.zip-bestand dat nodig is om te klonen (bijvoorbeeld out/CI/ALMLab.zip). |
solution-version | Versie van de oplossing die moet worden gekloond. |
target-folder | Doelmap om de uitgepakte oplossing in te plaatsen. (bijvoorbeeld Git-repository\target-solution-folder). |
Working-directory | Tijdelijke map voor onderhanden artefacten die nodig zijn voor het klonen van de oplossing. De standaardwaarde is root of the repository |
check-solution
Hiermee controleert u het oplossingsbestand om inconsistenties te detecteren.
Parameter | Beschrijving |
---|---|
environment-url | (Vereist) De URL voor de omgeving waaruit u de oplossing wilt klonen (bijvoorbeeld https://YourOrg.crm.dynamics.com ). |
user-name | (Vereist) Als u gebruikersnaam-/wachtwoordverificatie gebruikt, de gebruikersnaam van het account waarmee u verbinding maakt. |
password-secret | (Vereist) Als u gebruikersnaam-/wachtwoordverificatie gebruikt, het wachtwoord voor het account waarmee u verbinding maakt. |
app-id | De toepassings-id voor verificatie. Deze parameter is verplicht bij verificatie met Service Principal-referenties. |
client-secret | Het clientgeheim dat wordt gebruikt om de GitHub-pijplijn te verifiëren. Deze parameter is verplicht bij verificatie met Service Principal-referenties. |
tenant-id | De tenant-id voor verificatie met app-id en client-secret . |
path | (Vereist) Het pad en de naam van het oplossingsbestand dat u wilt controleren. |
geo | Welke geolocatie van de Microsoft Power Platform-controleservice moet worden gebruikt. De standaardwaarde is 'united states'. |
rule-level-override | Pad naar bestand met een JSON-array met regels en hun niveaus. Geaccepteerde waarden zijn: Kritiek, Hoog, Laag en Informatief. Voorbeeld: [{"Id":"meta-remove-dup-reg","OverrideLevel":"Medium"},{"Id":"il-avoid-specialized-update-ops","OverrideLevel":"Medium"}] |
checker-logs-artifact-name | De naam van de artefactmap waarvoor Microsoft Power Platform-controlelogboeken worden geüpload. De standaardwaarde is 'CheckSolutionLogs'. |
upgrade-solution
Biedt de mogelijkheid om de oplossing te upgraden.
Parameter | Beschrijving |
---|---|
environment-url | (Vereist) De URL voor de omgeving waaruit u de oplossing wilt klonen (bijvoorbeeld https://YourOrg.crm.dynamics.com ). |
user-name | (Vereist) Als u gebruikersnaam-/wachtwoordverificatie gebruikt, de gebruikersnaam van het account waarmee u verbinding maakt. |
password-secret | (Vereist) Als u gebruikersnaam-/wachtwoordverificatie gebruikt, het wachtwoord voor het account waarmee u verbinding maakt. |
solution-file | (Vereist) Het pad en de naam van het oplossingsbestand dat u wilt importeren. |
app-id | De toepassings-id voor verificatie. Deze parameter is verplicht bij verificatie met Service Principal-referenties. |
client-secret | Het clientgeheim dat wordt gebruikt om de GitHub-pijplijn te verifiëren. Deze parameter is verplicht bij verificatie met Service Principal-referenties. |
tenant-id | De tenant-id voor verificatie met app-id en client-secret . |
solution-name | (Vereist) Naam van de te upgraden oplossing. |
async | Hiermee wordt de oplossing asynchroon bijgewerkt. |
max-async-wait-time | Maximale asynchrone wachttijd in minuten. De standaardwaarde is 60 minuten. |
Pakkettaken
Met deze taken worden acties uitgevoerd op pakketten en deze omvatten het volgende.
deploy-package
Biedt de mogelijkheid om een pakket-DLL-bestand of een zipbestand met een pakket te implementeren.
Notitie
Deze actie wordt alleen ondersteund in Windows.
Parameter | Beschrijving |
---|---|
environment-url | (Vereist) De URL voor de omgeving waaruit u de oplossing wilt klonen (bijvoorbeeld https://YourOrg.crm.dynamics.com ). |
user-name | (Vereist) Als u gebruikersnaam-/wachtwoordverificatie gebruikt, de gebruikersnaam van het account waarmee u verbinding maakt. |
password-secret | (Vereist) Als u gebruikersnaam-/wachtwoordverificatie gebruikt, het wachtwoord voor het account waarmee u verbinding maakt. |
app-id | De toepassings-id voor verificatie. Deze parameter is verplicht bij verificatie met Service Principal-referenties. |
client-secret | Het clientgeheim dat wordt gebruikt om de GitHub-pijplijn te verifiëren. Deze parameter is verplicht bij verificatie met Service Principal-referenties. |
tenant-id | De tenant-id voor verificatie met app-id en client-secret . |
package | (Vereist) Het pad naar het pakket-DLL-bestand of zipbestand met een pakket. |
Portaltaken
Deze taken voeren de volgende acties uit op Power Pages.
upload-paportal
Uploadt gegevens naar Power Pages.
Parameter | Beschrijving |
---|---|
environment-url | (Vereist) De URL voor de omgeving waarin u de oplossing wilt importeren (bijvoorbeeld https://YourOrg.crm.dynamics.com ). |
app-id | De toepassings-id voor verificatie. Deze parameter is verplicht bij verificatie met Service Principal-referenties. |
client-secret | Het clientgeheim dat wordt gebruikt om de GitHub-pijplijn te verifiëren. Deze parameter is verplicht bij verificatie met Service Principal-referenties. |
tenant-id | De tenant-id voor verificatie met app-id en client-secret . |
upload-pad | Pad waarnaar de inhoud van de website wordt opgeslagen (alias: -p). |
implementatieprofiel | Upload portalgegevens met omgevingsdetails die zijn gedefinieerd via profielvariabelen in het bestand deployment-profiles/[profile-name].depoyment.yaml. |
model-version | Geeft aan of de te uploaden sitegegevens het standaard (1 ) of verbeterde gegevensmodel (2 ) gebruiken. De standaardwaarde is ′1′. |
Meer informatie over Microsoft Power Platform CLI-ondersteuning voor Power Pages.
Catalogustaken (preview)
Deze taken voeren acties uit voor de catalogus in Power Platform en omvatten het volgende.
Notitie
Momenteel maken catalogustaken voor Power Platform deel uit van een preview-versie.
installeren
Installeer een Catalog-item in de doelomgeving.
Parameter | Beschrijving |
---|---|
catalog-item-id | (Vereist) Catalogusitem dat in de doelomgeving moet worden geïnstalleerd. |
target-url | (Vereist) De URL van de doelomgeving waarin de catalogusitems moeten worden geïnstalleerd (bijvoorbeeld "https://YourOrg.crm.dynamics.com"). |
instellingen | (Vereist) Runtime-pakketinstellingen voor het uit te voeren installatieframework. De notatie van de tekenreeks moet key=value|key=value zijn. |
target-version | Te installeren doelversie. Indien leeg gelaten, wordt de gepubliceerde versie geselecteerd. |
poll-status | Peiling om de status van uw aanvraag te controleren. |
submit
Maak een lijst van alle gepubliceerde catalogusitems vanuit de huidige Dataverse-omgeving (organisatie).
Parameter | Beschrijving |
---|---|
path | (Vereist) Pad naar catalogusindieningsdocument. |
package-zip | Pad naar zipbestand voor pakket. |
solution-zip | Pad naar zipbestand voor oplossing. |
poll-status | Peiling om status van uw aanvraag te controleren. |
status
Haal de status van de aanvraag voor installeren/indienen van Catalog op.
Parameter | Beschrijving |
---|---|
tracking-id | (Vereist) Tracerings-id van aanvraag. |
type | (Vereist) Aanvraagtype (Waarden: Install, Submit) |
GitHub-werkstroom ontwerpen
Voltooi de GitHub-acties voor Microsoft Power Platform-labs voor meer informatie over het samenstellen van GitHub-werkstromen met GitHub-acties.
Meer informatie: Info over GitHub Actions