Självstudie: Automatisera distribution av lösningar med hjälp av GitHub Actions för Microsoft Power Platform

I den här tutorialen lär du dig följande:

  • Skapa ett nytt GitHub-repository
  • Skapa två GitHub arbetsflöden med hjälp av GitHub Actions för Microsoft Power Platform

Arbetsflödena kan automatiskt exportera din app (som en ohanterad lösning) från en utvecklingsmiljö, skapa en byggartefakt (hanterad lösning) och distribuera appen i produktionsmiljön. I den här självstudien används ALMLab-lösning du har byggt och de miljöer som du har konfigurerat i tidigare självstudier.

Relaterade Självstudier: kom igång och skapa en modellbaserad app.

Skapa ett GitHub konto

  1. Gå till https://github.com och välj Registrera dig eller Starta en kostnadsfri utvärderingsversion (eller logga in om du har ett befintligt konto).

    Skapa konto

  2. När du har skapat ditt konto skapar du en lagringsplats genom att välja Skapa lagringsplats eller Ny.

    Skapa en databas

    Följande alternativa landningsskärmar kan visas:

    Skapa en ny repo

  3. Skapa ditt nya repository och ge det namnet poweractionslab. Se till att du väljer Lägg till en README-fil för att initiera repot och välj Skapa lagringsplats.

    Initiera repo.

Skapa en ny hemlighet för Service Principal-autentisering

  1. Gå till lagringsplatsen och välj Inställningar. Öppna Secrets och välj sedan Åtgärder.

  2. På sidan Hemligheter namnger du hemligheten PowerPlatformSPN. Ange klienthemligheten från programregistreringen som du skapade i Microsoft Entra i fältet Värde och välj sedan Lägg till hemlighet. Du kommer att referera till klienthemligheten i YML-filerna som definierar GitHub arbetsflöden senare i den här självstudien.

    Skapa hemligheten för service principal

    Klienthemligheten har nu lagrats på ett säkert sätt som en GitHub-hemlighet.

Skapa ett workflow för att exportera och packa upp lösningsfilen till en ny gren

  1. Välj Åtgärder och välj sedan konfigurera ett arbetsflöde själv. Du kan också välja Konfigurera i rutan Enkelt arbetsflöde under avsnittet föreslaget för den här databasen.

    Konfigurera arbetsflöde.

  2. Du ser en ny YAML-fil med ett grundläggande arbetsflöde som hjälper dig att komma igång med GitHub Actions.

    YML-exempelfil

  3. Ta bort det förskapade innehållet och klistra sedan in innehållet från filen export-and-branch-solution-with-spn-auth.yml . Byt namn på filen till export-and-branch-solution.yml.

    Byta namn på och ersätta innehåll.

  4. Uppdatera <ENVIRONMENTURL> med URL-adressen för den utvecklingsmiljö du vill exportera från (t.ex https://poweractionsdev.crm.dynamics.com).

  5. Uppdatera <APPID> och <TENANT ID> med dina värden.

    • Om du använder autentiseringsuppgifter klistrar du in innehållet i export-and-branch-solution.yml i stället för innehållet i export-and-branch-solution-with-spn-auth.yml. Uppdatera <USERNAME> med det användarnamn som du använder för att ansluta till miljön.

      Byt namn och ersätt innehåll

    Tips

    Om du inte är bekant med GitHub Actions och vill veta mer kan du läsa den officiella dokumentationen på https://docs.github.com/en/actions.

  6. Nu är du redo att göra en commit av ändringarna. Välj Starta commit, skriv Skapa export-YML i rubrikfältet och lägg till en beskrivning (valfritt). Välj sedan Commit new file.

    Starta incheckning.

Grattis, du skapade ditt första GitHub arbetsflöde med hjälp av följande åtgärder:

  • Vem är jag: Ser till att du kan ansluta till den miljö som du vill exportera från.
  • Exportera lösningen: Exporterar lösningsfilen från utvecklingsmiljön.
  • Packa upp lösningen: Lösningsfilen som servern exporterar är en komprimerad (zip)-fil med konsoliderade konfigurationsfiler. Dessa ursprungliga filer är inte lämpliga för versionshantering eftersom de inte är strukturerade för att göra det möjligt för versionshanteringssystem att korrekt jämföra skillnader mellan filerna och registrera de ändringar som du vill checka in till versionshanteringen. Du måste packa upp lösningsfilerna för att göra dem lämpliga för lagring och bearbetning i versionshantering.
  • grenlösning: Skapar en ny gren för att lagra den exporterade lösningen.

Testa arbetsflödet för att exportera och packa upp

  1. Kontrollera sedan att arbetsflödet körs. Gå till Åtgärder, välj Kör arbetsflöde och välj Kör arbetsflöde. Om du använder ett annat lösningsnamn än ALMLabändrar du värdet här men behåller de andra värdena på samma sätt.

    Kör arbetsflöde.

  2. Efter 5–10 sekunder startar arbetsflödet. Du kan välja arbetsflödet som körs för att övervaka förloppet.

    Klicka för att visa arbetsflöde.

    Välj och visa arbetsflöde.

  3. När arbetsflödet är klart kontrollerar du att en ny gren har skapats med lösningen uppackad till solutions/ALMLab mappen. Gå till fliken Code och expandera listrutan grenar.

  4. Välj den branch som åtgärden skapade.

  5. Kontrollera att solutions/ALMLab mappen har skapats i den nya grenen. Skapa sedan en pull request för att sammanfoga ändringarna till huvudgrenen. Välj Medverka och välj Öppna pull-begäran i den utfällbara menyn.

  6. På skärmen Öppna en pull-begäran lägger du till en rubrik och beskrivning om du vill och väljer sedan Skapa pull-begäran.

  7. Skärmen uppdateras för att visa den nya pull request. När du skapar pull request får du en bekräftelse på att din gren inte har någon konflikt med huvudgrenen. Den här bekräftelsen innebär att du kan sammanfoga ändringarna till huvudgrenen automatiskt. Välj Slå samman pull-begäran och välj sedan Bekräfta sammanslagning. Om du vill kan du välja ta bort gren för att ta bort den nu nedlagda grenen.

    Visa grenar

  8. Gå tillbaka till standardgrenen (main) och kontrollera att lösningen är tillgänglig där.

Skapa ett återanvändbart arbetsflöde för att skapa en byggartefakt och importera den till produktion

I det här avsnittet skapar du ytterligare ett arbetsflöde som:

  • Skapar en hanterad lösning och publicerar den som en GitHub-artefakt
  • Importerar bygg artefakten till produktionsmiljön
  1. Gå till Åtgärder och välj Nytt arbetsflöde.

    Skapa nytt arbetsflöde.

  2. Välj att själv konfigurera ett arbetsflöde.

    Konfigurera ett arbetsflöde.

  3. Byt namn på arbetsflödets rubrik till release-solution-to-prod-with-inputs. Kopiera innehållet från release-solution-to-prod-with-inputs.yml-filen och klistra in det på skärmen Redigera ny fil .

    Byt namn och klistra in kod.

  4. Checka in ändringarna. Välj Starta commit och lägg till en titel och en beskrivning (valfritt). Välj sedan Checka in ny fil.

    Genomför ändringar.

Anropa det återanvändbara arbetsflödet i versionshändelsen

I det här avsnittet anropar du det återanvändbara arbetsflödet för release-händelsen.

  1. Gå till Åtgärder och välj Nytt arbetsflöde.

    Skapa nytt arbetsflöde.

  2. Välj konfigurera ett arbetsflöde själv.

    Konfigurera ett arbetsflöde.

  3. Byt namn på arbetsflödets rubrik till release-action-call. Kopiera innehållet från release-action-call.yml-filen och klistra in det på skärmen Redigera ny fil .

    Byt namn på och klistra in kod.

  4. Uppdatera följande variabler i den nya arbetsflödesfilen:

    • Uppdatera <BUILD_ENVIRONMENT> med URL:en för den byggmiljö som du använder för att generera den hanterade lösningen. Exempel: https://poweractionsbuild.crm.dynamics.com.
    • Uppdatera <PROD_ENVIRONMENT> med URL:en för den produktionsmiljö som du distribuerar till. Exempel: https://poweractionsprod.crm.dynamics.com.
    • Uppdatera <APP_ID> med Program-ID (klient) som du hittar på bladet App registrations i Microsoft Azure Portal genom att välja den registrering som du skapade tidigare i den här självstudien.
    • Uppdatera <TENANT_ID> med katalog-ID:t (klientorganisations-ID:t) som du hittar på bladet App registrations i Microsoft Azure Portal genom att välja den registrering som du skapade tidigare i den här självstudien.
  5. Checka in ändringarna. Välj Starta incheckning och lägg sedan till en rubrik (valfritt) och en beskrivning (valfritt). Välj sedan Checka in ny fil.

    Genomför ändringarna.

Testa arbetsflödet Distribution till produktion

Nu är du redo att testa det sista arbetsflödet. Det här arbetsflödet utlöses när en ny version distribueras till produktion.

  1. Gå till Versioner.

    Navigera till versioner.

  2. Välj Skapa ett utkast till en ny release.

  3. Lägg till en release-tagg, en rubrik och välj Publicera release.

  4. Välj Åtgärder för att visa det aktiva arbetsflödet.

    Välj för att visa arbetsflöde.

  5. Välj det pågående arbetsflödet om du vill visa åtgärderna medan de körs.

    Visa arbetsflöde.

  6. Vänta på att varje åtgärd slutförs.

    Visa gren.

  7. När arbetsflödet har slutförts loggar du in i produktionsmiljön och kontrollerar att lösningen har distribuerats som en hanterad lösning.

Distribuera uppdateringen och granska ändringar före produktionslansering

Testa processen från slutpunkt till slutpunkt och se sedan hur du kan visa och verifiera ändringar i en app innan du distribuerar den till produktion.

  1. Gå till ALMLab-lösningen i utvecklingsmiljön och välj Redigera eller välj lösningens visningsnamn.

    Redigera lösning.

  2. Välj och visa tabellen Ledighetsbegäran.

    Visa tabellen.

  3. Välj + Lägg till kolumn och skapa den nya kolumnen enligt följande bild.

    Lägg till kolumn.

    Uppdaterade fältvärden:**

    • Visningsnamn: Godkänd
    • Datatyp: Ja/Nej
  4. Välj Klar.

  5. Välj Spara register. Lägg till kolumn.

  6. Gå tillbaka till fliken Actions för dina GitHub-repositorier, välj Kör arbetsflöde och välj knappen Kör arbetsflöde.

    Kör arbetsflödet.

  7. Efter 5–10 sekunder startar arbetsflödet. Välj arbetsflödet som körs för att övervaka förloppet.

    Välj ett arbetsflöde.

    Visa arbetsflödet.

  8. När arbetsflödet är klart går du till den nya grenen genom att välja Code och sedan Branches.

    Navigera till gren.

  9. Välj den gren som du skapade genom att expandera contribute och välja Open pull request.

  10. Lägg till en rubrik (valfritt) och välj sedan Skapa pull request.

  11. När innehållet har uppdaterats väljer du fliken Ändrade filer.

  12. Observera att ändringarna i lösningen är markerade med grönt för att indikera att det här avsnittet i filen lades till när det jämfördes med samma fil i huvudgrenen.

  13. Gå tillbaka till fliken Konversation. Välj pull requests och välj sedan den pull request som du skapade tidigare.

  14. På sidan Pull request väljer du Squash and merge för att sammanfoga den uppdaterade lösningsfilen med huvudgrenen. Valfritt ta bort den som nu har slagits samman med main.

    Öppna pull request för ny gren, visa ändringar och slå samman till standardgren

  15. Följ stegen i avsnittet arbetsflödet Testa versionen till produktion för att skapa en ny version och verifiera att den uppdaterade lösningen har distribuerats till produktionsmiljön.

Grattis, du har konfigurerat ett CI/CD-exempelarbetsflöde med hjälp av GitHub Actions!

Se även

Automatisera ditt arbetsflöde från idé till produktion