Opplæring: Automatisere løsningsdistribusjon ved hjelp av GitHub-handlinger for Microsoft Power Platform
I denne opplæringen vil du lære hvordan du kan:
- Opprett et nytt GitHub-repositorium
- Opprette to GitHub-arbeidsflyter ved hjelp av GitHub-handlinger 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-løsningen du har bygd, og miljøene du har konfigurert i tidligere opplæringer.
Relaterte opplæringer: Start og Bygg en modelldrevet app.
Opprette en GitHub-konto
Gå til https://github.com og klikk Registrer eller Start en gratis prøveversjon (eller logg på hvis du har en eksisterende konto).
Etter at du har opprettet kontoen, oppretter du et repositorium ved å velge Opprett repositorium eller Ny.
Det kan hende at du ser følgende alternative landingsskjerm:
Opprett det nye repositoriet, og gi det navnet «poweractionslab». Kontroller at du velger Legg til en viktigfil for å starte repositoriet, og velg Opprett repositorium.
Opprette en ny hemmelighet for godkjenning av tjenestekontohaver
Gå til repositoriet, klikk Innstillinger, utvidderetter Hemmeligheter , og klikkderetter Handlinger.
På siden Hemmeligheter gir du hemmeligheten navnet «PowerPlatformSPN». Bruk klienthemmeligheten fra programregistreringen som er opprettet i Microsoft Entra, og angi den i Verdi-feltet, og velg deretter Legg til hemmelighet. Klienthemmeligheten vil bli referert i YML-filene som brukes til å definere GitHub-arbeidsflytene senere i dette laboratoriet.
Klienthemmeligheten er nå sikkert lagret som en GitHub-hemmelighet.
Opprett en arbeidsflyt for å eksportere og pakke opp løsningsfilen til en ny gren
Klikk Handlinger, og klikk konfigurer en arbeidsflyt selv, eller klikk Konfigurer i Enkel arbeidsflyt-boksen under det foreslåtte for dette lageret-delen.
Dette starter en ny YAML-fil med en grunnleggende arbeidsflyt for å hjelpe deg med å komme i gang med GitHub-handlinger.
Slett det forhåndsopprettede innholdet, lim inn innholdet fra filen export-and-branch-solution-with-spn-auth.yml, og endre deretter navnet på filen til «export-and-branch-solution.yml».
Oppdater
<ENVIRONMENTURL>
med URL-adressen til utviklingsmiljøet du vil eksportere fra (for eksempelhttps://poweractionsdev.crm.dynamics.com
).Oppdater
<APPID>
og<TENANT ID>
med verdiene.Hvis du bruker legitimasjon, limer du inn filen export-and-branch-solution.yml i stedet for innholdet i filen export-and-branch-solution-with-spn-auth.yml. Oppdater
<USERNAME>
med bruker navnet du bruker til å koble til miljøet.
Tips
Hvis du ikke er kjent med GitHub-handlinger og vil lære mer, kan du se den offisielle dokumentasjonen på https://docs.github.com/en/actions.
Du er nå klar til å iverksette endringene. Velg Start utføring, skriv inn Opprett eksport yml i tittelfeltet, og legg deretter til en beskrivelse (valgfritt). Klikk deretter Utfør ny fil.
Gratulerer, du har nettopp opprettet din første GitHub-arbeidsflyt ved å bruke følgende handlinger:
- Hvem er jeg: Sikrer at du kan koble til miljøet du eksporterer fra.
- Eksporter løsning: Eksporterer løsningsfilen fra utviklingsmiljøet.
- Pakk ut løsning: Løsningsfilen som eksporteres fra serveren, er en komprimert fil (zip) med konsoliderte konfigurasjonsfiler. Disse første filene passer ikke for behandling av kildekoder siden de ikke er strukturert til å gjøre det mulig for kildekodebehandlingssystemer å utføre forskjell på filene på riktig måte, og fange opp endringene du vil lagre i kildekontrollen. Du må pakke ut løsningsfilene for å få dem til å passe for lagring og behandling av kildekontroller.
- Grenløsning: Oppretter en ny gren for å lagre den eksporterte løsningen.
Test arbeidsflyten for eksport og utpakking
Test deretter at arbeidsflyten kjører. Naviger til Handlinger, Kjør arbeidsflyt, og velg Kjør arbeidsflyt. Hvis du har et annet løsningsnavn enn ALMLab, endrer du verdien her, men lar de andre verdiene være som de er.
Etter 5–10 sekunder starter arbeidsflyten, og du kan velge den kjørende arbeidsflyten for å overvåke fremdriften.
Når arbeidsflyten er fullført, kontrollerer du at det er opprettet en ny gren med løsningen, pakket ut til mappen solutions/ALMLab. Naviger til Kode-fanen, og utvid rullegardinmenyen for grener.
Velg grenen som ble opprettet av handlingen.
Kontroller at løsninger/ALMLab-mappen er opprettet i den nye grenen, og opprett deretter en henteforespørsel for å slå sammen endringene i hovedgrenen. Klikk Bidra, og klikk Åpne pull-forespørsel i undermenyen.
I skjermbildet Åpne en henteforespørsel legger du til en tittel og beskrivelse slik du ønsker, og deretter klikker du Opprett en henteforespørsel.
Skjermen oppdateres med den nylig opprettede henteforespørselen. Etter hvert som henteforespørselen opprettes, blir det oppgitt en bekreftelse som viser at grenen ikke er i konflikt med hovedgrenen. Denne bekreftelsen betyr at endringene automatisk kan flettes inn i hovedgrenen. Klikk Slå sammen pull-forespørsel, og klikk deretter Bekreft fletting. Du kan eventuelt klikke Slett gren for å rydde i den nå nedlagte grenen.
Gå tilbake til standardgrenen, og valider at løsningen nå er tilgjengelig.
Opprette en gjenbrukbar arbeidsflyt for å generere en build-artefakt og importere til produksjon
I denne delen skal vi opprette en ekstra arbeidsflyt som:
- Oppretter en administrert løsning, og publiserer den som en GitHub-artefakt
- Importerer byggartefakten til produksjonsmiljøet
Naviger til Handlinger og velg Ny arbeidsflyt.
Velg angi deretter en arbeidsflyt selv.
Endre tittelen til arbeidsflyten til «release-solution-to-prod-with-inputs», og kopier innholdet fra filen release-solution-to-prod-with-inputs.yml, og lim det inn på skjermen Rediger ny fil.
Utfør endringene. Velg Start utføring, og legg deretter til tittel og beskrivelse (valgfritt). Velg deretter Utfør ny fil.
Kall arbeidsflyten som kan brukes på nytt for utgivelseshendelsen
I denne delen kaller vi arbeidsflyten som kan brukes på nytt, for utgivelseshendelsen.
Naviger til Handlinger og velg Ny arbeidsflyt.
Velg konfigurer en arbeidsflyt selv.
Endre tittelen til arbeidsflyten til «release-action-call», og kopier innholdet fra filen release-action-call.yml, og lim det inn på skjermen Rediger ny fil.
Oppdater følgende variabler i den nye arbeidsflytfilen:
- Oppdater
<BUILD_ENVIRONMENT>
med URL-adressen for byggmiljøet du bruker til å generere den administrerte løsningen. Eksempel:https://poweractionsbuild.crm.dynamics.com
. - Oppdater
<PROD_ENVIRONMENT>
med URL-adressen for produksjonsmiljøet du distribuerer til. Eksempel: https://poweractionsprod.crm.dynamics.com. - Oppdater
<APP_ID>
med program-IDen (klient-ID-en ) som du finner i appregistreringsbladet i Microsoft Azure-portalen ved å klikke deg inn i registreringen du tidligere har opprettet i denne opplæringen. - Oppdater
<TENANT_ID>
med katalog (leier) som du finner i appregistreringsbladet i Microsoft Azure-portalen ved å klikke deg inn i registreringen du tidligere har opprettet i denne opplæringen.
- Oppdater
Utfør endringene. Velg Start utføring, og legg deretter til tittel (valgfritt) og beskrivelse (valgfritt). Velg deretter Utfør ny fil.
Test frigivelsen til produksjonsarbeidsflyten
Du er nå klar til å teste den siste arbeidsflyten. Denne arbeidsflyten utløses når en ny frigivelse distribueres til produksjon.
Naviger til Utgivelser.
Velg Lag et utkast til en ny utgivelse.
Legg til et utgivelsesmerke, en tittel og velg Publiser utgivelse.
Velg Handlinger for å vise arbeidsflyten som kjører.
Velg arbeidsflyten som kjører, for å vise handlingene slik de blir kjørt.
Vent til hver handling er fullført.
Når arbeidsflyten er fullført, logger du på produksjonsmiljøet og kontrollerer at løsningen er distribuert som en administrert løsning.
Distribuer oppdateringen og se gjennom endringer før produksjonsutgivelse
Nå tester vi ende-til-ende-prosessen, og deretter ser vi hvordan vi kan vise og validere endringer i en app før den distribueres til produksjon.
Gå til ALMLab-løsningen i utviklingsmiljøet, og velg Rediger, eller klikk løsningens visningsnavn.
Velg og vis tabellen Forespørsler om fritid.
Klikk + Legg til-kolonne, og opprett den nye kolonnen som vist i figuren nedenfor.
Oppdaterte feltverdier:**
- Visningsnavn: Godkjent
- Datatype: Ja/Nei
Klikk Gjort.
Velg Lagre tabell
Gå tilbake til GitHub-repositorium Handlinger-kategorien, velg Kjør arbeidsflyt, og velg Kjør arbeidsflyt-knappen.
Etter 5–10 sekunder starter arbeidsflyten, og du kan klikke på den kjørende arbeidsflyten for å overvåke fremdriften.
Når arbeidsflyten er fullført, navigerer du til den nye grenen ved å velge Kode og deretter Grener.
Velg grenen som ble opprettet av utvid bidra, og klikk Åpne henteforespørsel.
Legg til en tittel (valgfritt), og klikk deretter Opprett henteforespørsel.
Etter innholdsoppdateringene klikker du kategorien Filer som er endret.
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.
Naviger tilbake til Diskusjon-kategorien. Velg Henteforespørsler, og velg deretter henteforespørselen som ble opprettet tidligere.
På Henteforespørsel-siden velger du Squash og slå sammen for å flette den oppdaterte løsningsfilen til hovedgrenen, eventuelt sletting som nå er slått sammen til hoved.
Følg fremgangsmåten i delen Test frigivelsen til produksjonsarbeidsflyten for å opprette en ny versjon og validere at den oppdaterte løsningen er distribuert til produksjonsmiljøet.
Gratulerer, du har konfigurert et eksempel CI/CD-arbeidsflyt ved hjelp av GitHub-handlinger!