Opplæring: Automatiser løsningsdistribusjon ved hjelp av GitHub Actions for Microsoft Power Platform

I denne opplæringen lærer du hvordan du kan gjøre følgende:

  • Opprett et nytt GitHub-repositorium
  • Opprett to GitHub arbeidsflyter ved hjelp av GitHub Actions for Microsoft Power Platform

Arbeidsflytene kan automatisk eksportere appen (som en uadministrert løsning) fra et utviklingsmiljø, generere en build-artefakt (administrert løsning) og distribuere appen i produksjonsmiljøet. Denne opplæringen bruker ALMLab solution du har bygd, og miljøene du har konfigurert i tidligere opplæringer.

Relaterte opplæringer: Start og Bygg en modelldrevet app.

Opprett en GitHub-konto

  1. Gå til https://github.com og velg Registrer deg eller Start en gratis prøveversjon (eller logg på hvis du har en eksisterende konto).

    Opprett konto

  2. Når du har opprettet kontoen, oppretter du et repositorium ved å velge Opprett repositorium eller Ny.

    Opprett et repositorium

    Det kan hende at du ser følgende alternative landingsskjerm:

    Opprett et nytt repositorium

  3. Opprett det nye repositoriet, og gi det navnet poweractionslab. Kontroller at du velger Legg til en README-fil for å starte repositoriet, og velg Opprett repositorium.

    Opprett repo.

Opprette en ny hemmelighet for autentisering for tjenesteprinsipal

  1. Gå til ditt repositorium, og velg Innstillinger. Utvid Secrets, og velg deretter Handling.

  2. På Secrets-siden, navngi hemmeligheten PowerPlatformSPN. Skriv inn klienthemmeligheten fra programregistreringen du opprettet i Microsoft Entra i Verdi-feltet, og velg deretter Legg til hemmelighet. Du vil vise til klienthemmeligheten i YML-filene som definerer GitHub-arbeidsflyter senere i denne opplæringen.

    Opprett hemmeligheten for tjenesteprinsippal

    Klienthemmeligheten er nå sikkert lagret som en GitHub-secret.

Opprett en arbeidsflyt for å eksportere og pakke opp løsningsfilen til en ny gren

  1. Velg Handlinger, og velg deretter konfigurer en arbeidsflyt selv. Du kan også velge Konfigurer i boksen Enkel arbeidsflyt under foreslått for dette repositoriet.

    Konfigurer arbeidsflyt.

  2. Du ser en ny YAML-fil med en grunnleggende arbeidsflyt for å hjelpe deg med å komme i gang med GitHub Actions.

    Eksempel på YML-fil

  3. Slett det forhåndsopprettede innholdet, og lim deretter inn innholdet fra export-and-branch-solution-with-spn-auth.yml filen. Gi filen nytt navn til export-and-branch-solution.yml.

    Gi nytt navn til og erstatt innhold.

  4. Oppdater <ENVIRONMENTURL> med URL-adressen til utviklingsmiljøet du vil eksportere fra (for eksempel https://poweractionsdev.crm.dynamics.com).

  5. Oppdater <APPID> og <TENANT ID> med dine verdier.

    • Hvis du bruker påloggingsinformasjon, lim inn innholdet i filen export-and-branch-solution.yml i stedet for innholdet i filen export-and-branch-solution-with-spn-auth.yml. Oppdater <USERNAME> med brukernavnet du bruker til å koble til miljøet.

      Gi nytt navn til og erstatt innhold

    Tips

    Hvis du ikke er kjent med GitHub Actions og vil lære mer, kan du se den offisielle dokumentasjonen på https://docs.github.com/en/actions.

  6. Du er nå klar til å committe endringene. Velg Start commit, skriv inn Opprett eksport yml i tittelfeltet, og legg deretter til en beskrivelse (valgfritt). Velg deretter Bekreft ny fil.

    Start commit.

Gratulerer, du opprettet den første GitHub-arbeidsflyten ved hjelp av følgende Actions:

  • Hvem er jeg: Sikrer at du kan koble til miljøet du vil eksportere fra.
  • Eksporter løsning: Eksporterer løsningen fra utviklingsmiljøet.
  • Unpack Solution: Løsningsfilen som serveren eksporterer, er en komprimert (zip)-fil med konsoliderte konfigurasjonsfiler. Disse første filene er ikke egnet for kildekodebehandling fordi de ikke er strukturert for å gjøre det mulig for kildekodebehandlingssystemer å sammenligne forskjeller i filene og registrere endringene du vil utføre i kildekontrollen. Du må pakke ut løsningsfilene for å gjøre dem egnet for lagring og behandling i kildekontroll.
  • Branch Solution: Oppretter en ny gren for å lagre den eksporterte løsningen.

Test arbeidsflyten for eksport og utpakking

  1. Test deretter at arbeidsflyten kjører. Gå til Handlinger, velg Kjør arbeidsflyt, og velg Kjør arbeidsflyt. Hvis du bruker et annet løsningsnavn enn ALMLab, endrer du verdien her, men beholder de andre verdiene på samme måte.

    Kjør arbeidsflyt.

  2. Etter 5–10 sekunder starter arbeidsflyten. Du kan velge den kjørende arbeidsflyten for å overvåke fremdriften.

    Klikk for å vise arbeidsflyt.

    Velg og vis arbeidsflyt.

  3. Når arbeidsflyten er ferdig, kontrollerer du at en ny gren er opprettet med løsningen pakket ut til solutions/ALMLab mappen. Gå til Kode-fanen, og utvid rullegardinlisten for grener.

  4. Velg grenen som operasjonen opprettet.

  5. Kontroller at solutions/ALMLab mappen er opprettet i den nye grenen. Deretter oppretter du en pull request for å slå sammen endringene inn i hovedgrenen. Velg Bidra, og velg Åpne pull request i undermenyen.

  6. Legg til en tittel og beskrivelse hvis du vil, på skjermbildet Åpne en Pull-forespørsel , og velg deretter Opprett pull-forespørsel.

  7. Skjermen oppdateres for å vise den nye pull requesten. Når du oppretter pull-forespørselen, får du bekreftelse på at grenen ikke har noen konflikt med hovedgrenen. Denne bekreftelsen betyr at du kan slå sammen endringene til hovedgrenen automatisk. Velg Flett pull-forespørsel , og velg deretter Bekreft fletting. Du kan også velge slett gren for å fjerne den nå nedlagte grenen.

    Vise grener

  8. Gå tilbake til standardgrenen (hovedgrenen), og kontroller at løsningen er tilgjengelig der.

Opprett en gjenbrukbar arbeidsflyt for å generere en build-artefakt og importere til produksjon

Opprett en ekstra arbeidsflyt i denne delen som:

  • Oppretter en administrert løsning, og publiserer den som en GitHub-artefakt
  • Importerer byggartefakten til produksjonsmiljøet
  1. Gå til Handlinger, og velg Ny arbeidsflyt.

    Opprett ny arbeidsflyt.

  2. Velg å konfigurere en arbeidsflyt selv.

    Konfigurer en arbeidsflyt.

  3. Gi nytt navn til tittelen på arbeidsflyten til release-solution-to-prod-with-inputs. Kopier innholdet fra release-solution-to-prod-with-inputs.yml-filen , og lim det inn i skjermbildet Rediger ny fil .

    Gi nytt navn til og lim inn kode.

  4. Bekreft endringene. Velg Start commit, og legg deretter til en tittel og en beskrivelse (valgfritt). Velg deretter Opprett ny fil.

    Bekreft endringer.

Bruk arbeidsflyten som kan brukes på nytt for utgivelseshendelsen

I denne delen kaller du den gjenbrukbare arbeidsflyten for release-hendelsen.

  1. Gå til Handlinger , og velg Ny arbeidsflyt.

    Opprett ny arbeidsflyt.

  2. Velg å konfigurere en arbeidsflyt selv.

    Konfigurer en arbeidsflyt.

  3. Endre tittelen på arbeidsflyten til release-action-call. Kopier innholdet fra release-action-call.yml-filen , og lim det inn i rediger ny fil-skjermen .

    Gi nytt navn til og lim inn kode.

  4. Oppdater følgende variabler i den nye arbeidsflytfilen:

    • Oppdater <BUILD_ENVIRONMENT> med nettadressen for byggmiljøet du bruker til å generere den administrerte løsningen. Eksempel: https://poweractionsbuild.crm.dynamics.com.
    • Oppdater <PROD_ENVIRONMENT> med nettadressen for produksjonsmiljøet du distribuerer til. Eksempel: https://poweractionsprod.crm.dynamics.com.
    • Oppdater <APP_ID> med Application (Client) ID som du finner i App registrations-bladet i Microsoft Azure Portal ved å velge registreringen du opprettet tidligere i denne opplæringen.
    • Oppdater <TENANT_ID> med Katalog-ID (leier) du finner i App registrations-bladet i Microsoft Azure Portal ved å velge registreringen du opprettet tidligere i denne opplæringen.
  5. Bekreft endringene. Velg Start commit, og legg deretter til en tittel (valgfritt) og en beskrivelse (valgfritt). Velg deretter Commit new file.

    Bekreft endringer.

Test arbeidsflyten for produksjonssetting

Du er nå klar til å teste den siste arbeidsflyten. Denne arbeidsflyten utløses når en ny utgivelse distribueres til produksjon.

  1. Gå til Releases.

    Naviger til utgivelser.

  2. Velg Utarbeid en ny utgivelse.

  3. Legg til et utgivelsesmerke, en tittel og velg Publiser utgivelse.

  4. Velg Handlinger for å vise arbeidsflyten som kjører.

    Velg å vise arbeidsflyt.

  5. Velg arbeidsflyten som kjører, for å vise handlingene slik de blir kjørt.

    Vis arbeidsflyt.

  6. Vent på at hver handling fullføres.

    Vis gren.

  7. Når arbeidsflyten er ferdig, logger du på produksjonsmiljøet og validerer at løsningen er distribuert som en administrert løsning.

Rull ut oppdateringen og se gjennom endringer før produksjonsutgivelse

Test ende-til-ende-prosessen, og se hvordan du kan se og validere endringer i en app før du distribuerer den til produksjon.

  1. Gå til ALMLab-løsningen i utviklingsmiljøet, og velg Rediger eller velg løsningsnavnet som vises.

    Rediger løsning.

  2. Velg og vis tabellen Fraværsforespørsel.

    Vis tabellen

  3. Velg + Legg til kolonne , og opprett den nye kolonnen som vist i illustrasjonen nedenfor.

    Legg til kolonne.

    Oppdaterte feltverdier:**

    • Visningsnavn: Godkjent
    • Datatype: Ja/Nei
  4. Velg Ferdig.

  5. Velg Lagre tabell. Legg til kolonne.

  6. Gå tilbake til GitHub-repositoriene dine sin Handlinger-fane, velg Kjør arbeidsflyt, og velg Kjør arbeidsflyt-knappen.

    Kjør arbeidsflyten.

  7. Etter 5–10 sekunder starter arbeidsflyten. Velg den kjørende arbeidsflyten for å overvåke fremdriften.

    Velg arbeidsflyt.

    Vis arbeidsflyten.

  8. Når arbeidsflyten er ferdig, går du til den nye grenen ved å velge Code og deretter Branches.

    Naviger til gren.

  9. Velg grenen du opprettet ved å utvide contribute og velge Open pull request.

  10. Legg til en tittel (valgfritt), og velg deretter Opprett pull-forespørsel.

  11. Etter at innholdet er oppdatert, velger du Endrede filer-fanen.

  12. Legg merke til at endringene i løsningen er uthevet i grønt for å angi at denne delen av filen ble lagt til ved sammenligning med samme fil i hovedgrenen.

  13. Gå tilbake til Samtale-fanen. Velg pull requests, og velg deretter pull request-en du opprettet tidligere.

  14. På Pull request-siden velger du Squash and merge for å flette den oppdaterte løsningsfilen inn i hovedgrenen. Du kan også slette den som nå er slått sammen med hovedgrenen.

    Åpne pull request for ny gren, vis endringer og flett til standardgren

  15. Følg trinnene i delen arbeidsflyten for å teste lansering til produksjon for å opprette en ny utgivelse og validere at den oppdaterte løsningen distribueres til produksjonsmiljøet.

Gratulerer, du har konfigurert en eksempelarbeidsflyt for CI/CD ved hjelp av GitHub Actions!

Se også

Automatiser arbeidsflyten fra idé til produksjon