Zelfstudie: Implementatie van oplossingen automatiseren met GitHub-acties voor Microsoft Power Platform
In deze zelfstudie krijgt u meer informatie over:
- Een nieuwe GitHub-opslagplaats maken
- Twee GitHub-werkstromen maken met GitHub-acties voor Microsoft Power Platform
De werkstromen kunnen uw app automatisch exporteren (als een onbeheerde oplossing) vanuit een ontwikkelomgeving, een buildartefact genereren (beheerde oplossing) en de app implementeren in uw productieomgeving. Deze zelfstudie gebruikt de ALMLab-oplossing die u hebt gebouwd en de omgevingen die u hebt opgezet in eerdere zelfstudies.
Gerelateerde zelfstudie: Aan de slag en Eeen modelgestuurde app bouwen.
Een GitHub-account maken
Ga naar https://github.com en klik op Registreren of Een gratis proefperiode starten (of meld u aan als u een bestaand account hebt).
Nadat u uw account hebt gemaakt, maakt u een opslagplaats door Een opslagplaats maken of Nieuw te selecteren.
Mogelijk ziet u het volgende alternatieve landingsscherm:
Maak uw nieuwe opslagplaats en noem deze 'poweractionslab'. Selecteer Een README-bestand toevoegen om de opslagplaats te starten en kies Een opslagplaats maken.
Een nieuw geheim voor Service Principal-verificatie maken
Ga naar uw opslagplaats en klik op instellingen, vouw vervolgens Geheimen uit en klik vervolgens op Acties.
Geef het geheim op de pagina Geheimen de naam 'PowerPlatformSPN'. Gebruik het clientgeheim van de toepassingsregistratie die is gemaakt in Microsoft Entra en voer dit in het veld Waarde in. Selecteer vervolgens Geheim toevoegen. Er wordt verwezen naar het clientgeheim in de YML-bestanden die later in dit lab worden gebruikt om de GitHub-werkstromen te definiëren.
Het clientgeheim wordt nu veilig opgeslagen als een GitHub-geheim.
Een werkstroom maken om het oplossingsbestand te exporteren en uit te pakken naar een nieuwe branch
Klik op Acties en op zelf een werkstroom instellen of klik op Configureren in het vak Eenvoudige werkstroom onder de sectie voorgesteld voor deze opslagplaats.
Hiermee wordt een nieuw YAML-bestand gestart met een basiswerkstroom om u op weg te helpen met GitHub Actions.
Verwijder de vooraf gemaakte inhoud, plak de inhoud van het bestand uit het bestand export-and-branch-solution-with-spn-auth.ymll en wijzig de naam van het bestand vervolgens in 'export-and-branch-solution'.yml.
Werk
<ENVIRONMENTURL>
bij met de URL van de ontwikkelomgeving waaruit u wilt exporteren (bijvoorbeeld:https://poweractionsdev.crm.dynamics.com
).Werk
<APPID>
en<TENANT ID>
bij met uw waarden.Als u referenties gebruikt, plakt u het bestand export-and-branch-solution.yml in plaats van de bestandsinhoud van export-and-branch-solution-with-spn-auth.yml. Werk
<USERNAME>
bij met de gebruikersnaam die u gebruikt om verbinding te maken met de omgeving.
Fooi
Als u niet bekend bent met GitHub Actions en meer wilt weten, kunt u de officiële documentatie bekijken op https://docs.github.com/en/actions.
Nu kunt u uw wijzigingen doorvoeren. Selecteer Beginnen met doorvoeren, typ export-yml maken in het titelveld en voeg vervolgens een beschrijving toe (optioneel). Klik vervolgens op Een nieuw bestand vastleggen.
Gefeliciteerd, u hebt zojuist uw eerste GitHub-werkstroom gemaakt met de volgende acties:
- Wie ben ik: Zorgt ervoor dat u succesvol kunt Verbinden naar de omgeving waaruit u exporteert.
- Oplossing exporteren: Exporteert het oplossingsbestand uit uw ontwikkelingsbestand omgeving.
- Oplossing uitpakken: Het oplossingsbestand dat van de server wordt geëxporteerd, is een gecomprimeerd (zip) bestand met geconsolideerde configuratiebestanden. Deze initiële bestanden zijn niet geschikt voor broncodebeheer, aangezien ze niet zo gestructureerd zijn dat het voor broncodebeheersystemen mogelijk is om de bestanden correct te differentiëren en de wijzigingen in het bronbeheer vast te leggen. U moet de oplossingsbestanden 'uitpakken' om ze geschikt te maken voor opslag en verwerking met bronbeheer.
- Branch Solution: Maakt een nieuwe branch om de geëxporteerde oplossing op te slaan.
De export testen en de werkstroom uitpakken
Test vervolgens of de werkstroom wordt uitgevoerd. Navigeer naar Acties, Werkstroom uitvoeren en kies Werkstroom uitvoeren. Als u een andere oplossingsnaam hebt dan 'ALMLab', wijzigt u de waarde hier, maar laat u de andere waarden ongewijzigd.
Na 5-10 seconden start de werkstroom en kunt u de actieve werkstroom selecteren om de voortgang te volgen.
Nadat de werkstroom is voltooid, valideert u dat er een nieuwe branch is gemaakt met de oplossing die is uitgepakt in de map solutions/ALMLab. Ga naar het tabblad Code en vouw de vervolgkeuzelijst takken uit.
Selecteer de branch die is gemaakt door de actie.
Valideer of de map solutions/ALMLab is gemaakt in de nieuwe branch en maak vervolgens een Pull-aanvraag om de wijzigingen samen te voegen in de hoofd-branch. Klik op Bijdragen en klik in het uitklapmenu op Pull-aanvraag openen.
Voeg in het scherm Een Pull-aanvraag openen desgewenst een titel en beschrijving toe en klik vervolgens op Pull-aanvraag maken.
Het scherm wordt bijgewerkt en toont de nieuw aangemaakte pull-aanvraag. Terwijl de pull-aanvraag wordt gemaakt, wordt een bevestiging gegeven waaruit blijkt dat onze branch geen conflict heeft met de hoofd-branch. Deze bevestiging betekent dat de wijzigingen automatisch in de hoofd-branch kunnen worden samengevoegd. Klik op Pull-aanvraag samenvoegen en klik vervolgens op Samenvoeging bevestigen. Klik eventueel op branch verwijderen om de nu vervalen branch op te schonen.
Navigeer terug naar de standaard (hoofd) branch en valideer dat de oplossing daar nu ook beschikbaar is.
Een herbruikbare werkstroom maken om een build-artefact te genereren en te importeren in productie
In deze sectie gaan we een extra werkstroom creëren:
- Maakt een beheerde oplossing en publiceert deze als een GitHub-artefact
- Importeert het buildartefact in de productieomgeving
Navigeer naar Acties en selecteer Nieuwe werkstroom.
Kies Zelf een werkstroom instellen.
Wijzig de titel van de werkstroom in 'release-solution-to-prod-with-inputs' en kopieer de inhoud van het bestand release-solution-to-prod-with-inputs.yml en plak het in het scherm Nieuw bestand bewerken.
Voer de wijzigingen door. Kies Beginnen met doorvoeren en voeg vervolgens een titel en beschrijving (optioneel) toe. Selecteer vervolgens Een nieuw bestand doorvoeren.
De herbruikbare werkstroom aanroepen voor de release-gebeurtenis
In deze sectie roepen we de herbruikbare werkstroom voor de release-gebeurtenis aan.
Navigeer naar Acties en selecteer Nieuwe werkstroom.
Kies zelf een werkstroom instellen.
Wijzig de titel van de werkstroom in 'release-action-call' en kopieer de inhoud van het bestand release-action-call.yml en plak het in het scherm Nieuw bestand bewerken.
Werk de volgende variabelen bij in het nieuwe werkstroombestand:
- Werk
<BUILD_ENVIRONMENT>
bij met de URL voor de buildomgeving die u gebruikt om de beheerde oplossing te genereren. Voorbeeld:https://poweractionsbuild.crm.dynamics.com
. - Werk
<PROD_ENVIRONMENT>
bij met de URL voor de productieomgeving waarnaar u implementeert. Voorbeeld: https://poweractionsprod.crm.dynamics.com. - Werk
<APP_ID>
bij met de Applicatie-id (Client) die te vinden is in de App-registraties-blade van de Microsoft Azure-portal door op de registratie te klikken die eerder in deze tutorial is gemaakt. - Werk
<TENANT_ID>
bij met de Map-id (tenant) die te vinden is in de App-registraties-blade van de Microsoft Azure-portal door op de registratie te klikken die eerder in deze tutorial is gemaakt.
- Werk
Voer de wijzigingen door. Kies Beginnen met doorvoeren en voeg vervolgens een titel (optioneel) en beschrijving (optioneel) toe. Selecteer vervolgens Een nieuw bestand doorvoeren.
De vrijgave naar de productiewerkstroom testen
U bent nu klaar om de laatste werkstroom te testen. Deze werkstroom wordt geactiveerd wanneer een nieuwe release wordt geïmplementeerd in productie.
Navigeer naar Releases.
Selecteer Een nieuwe release samenstellen.
Voeg een releasetag en een titel toe en kies Release publiceren.
Selecteer Acties om de actieve werkstroom te bekijken.
Kies de actieve werkstroom om de acties te bekijken terwijl ze worden uitgevoerd.
Wacht tot elke actie is voltooid.
Nadat de werkstroom is voltooid, meldt u zich aan bij uw productieomgeving en valideert u dat de oplossing is geïmplementeerd als een beheerde oplossing.
De update implementeren en de wijzigingen bekijken voor de productieversie
Het hele proces wordt getest en en vervolgens wordt gekeken hoe wijzigingen in een app kunnen worden weergegeven en gevalideerd voordat deze in productie wordt genomen.
Navigeer naar de ALMLab-oplossing in uw ontwikkelomgeving en kies Bewerken of klik op de weergavenaam van de oplossingen.
Selecteer en bekijk de tabel Verlofaanvraag.
Klik op + Kolom toevoegen en maak de nieuwe kolom aan zoals weergegeven in de onderstaande afbeelding.
bijgewerkte veldwaarden:**
- weergavenaam: Goedgekeurd
- Gegevenstype: Ja/Nee
Klik op Gereed.
Klik op Tabel opslaan
Navigeer terug naar het tabblad Acties van uw GitHub-opslagplaatsen, kies Werkstroom uitvoeren en selecteer de knop Werkstroom uitvoeren.
Na 5-10 seconden start de werkstroom en kunt u op de actieve werkstroom klikken om de voortgang te volgen.
Nadat de werkstroom is voltooid, navigeert u naar de nieuwe vertakking door Code te selecteren en vervolgens Vertakkingen.
Selecteer de branch die is gemaakt door Bijdragen uit te vouwen en klik op Pull-aanvraag openen.
Voeg een titel toe (optioneel) en klik vervolgens op Pull-aanvraag maken.
Klik nadat de inhoud is bijgewerkt op het tabblad Bestanden gewijzigd.
Merk op dat de wijzigingen in de oplossing groen zijn gemarkeerd om aan te geven dat deze sectie van het bestand is toegevoegd in vergelijking met hetzelfde bestand in de hoofd-branch.
Navigeer terug naar het tabblad Gesprek. Selecteer Pull-aanvragen en selecteer vervolgens de eerder gemaakte pull-aanvraag.
Selecteer op de pagina Pull-aanvraag de optie Squash en samenvoegen om het bijgewerkte oplossingsbestand in je hoofd-branch samen te voegen, verwijder optioneel wat nu is samengevoegd in hoofd.
Volg de stappen in de sectie De vrijgave naar de productiewerkstroom testen om een nieuwe release te maken en te valideren dat de bijgewerkte oplossing is geïmplementeerd in uw productieomgeving.
Gefeliciteerd, u hebt een voorbeeld van een CI/CD-werkstroom opgezet met GitHub-acties!