Esercitazione: automatizzare la distribuzione della soluzione tramite Azioni GitHub per Microsoft Power Platform
La presente esercitazione include informazioni su come:
- Creare un nuovo repository GitHub
- Creare due flussi di lavoro GitHub utilizzando le Azioni GitHub per Microsoft Power Platform
I flussi di lavoro possono esportare automaticamente l'app (come soluzione non gestita) da un ambiente di sviluppo, generare un artefatto di compilazione (soluzione gestita) e distribuire l'app nell'ambiente di produzione. Questa esercitazione utilizza la soluzione ALMLab compilata e gli ambienti impostati nelle esercitazioni precedenti.
Esercitazioni correlate: Attività iniziali e Creare un'app basata su modello.
Creare un account GitHub
Vai a https://github.com e fai clic su Iscriviti o Avvia versione di valutazione (o accedi se hai un account esistente).
Dopo aver creato l'account, crea un repository selezionando Crea repository o Nuovo.
Potresti vedere la seguente schermata di destinazione alternativa:
Crea il nuovo repository e chiamalo "poweractionslab". Assicurati di selezionare Aggiungi un file LEGGIMI per avviare il repo e scegli Crea repository.
Creazione di un nuovo segreto per l'autenticazione dell'entità servizio
Accedi al tuo repository e fai clic su Impostazioni, quindi espandi Segreti e fai clic su Azioni.
Nella pagina Segreti, denomina il segreto "PowerPlatformSPN". Usa il segreto client dalla registrazione dell'applicazione creata in Microsoft Entra e immettilo nel campo Valore, quindi seleziona Aggiungi segreto. Verrà fatto riferimento al segreto client nei file YML utilizzati per definire i flussi di lavoro GitHub più avanti in questo lab.
Il segreto client è ora archiviato in modo sicuro come segreto GitHub.
Creare un flusso di lavoro per esportare e decomprimere il file della soluzione in un nuovo ramo
Fai clic su Azioni e dai clic su impostare personalmente un flusso di lavoro o fai clic su Configura nella casella Flusso di lavoro semplice della sezione suggerito per questo repository.
Ciò avvierà un nuovo file YAML con un flusso di lavoro di base per aiutarti a iniziare a utilizzare le azioni GitHub.
Elimina il contenuto pre-creato, incolla il contenuto dal file export-and-branch-solution-with-spn-auth.yml, quindi rinomina il file in "export-and-branch-solution".yml.
Aggiorna
<ENVIRONMENTURL>
con l'URL dell'ambiente di sviluppo da cui desideri eseguire l'esportazione (ad esempio,https://poweractionsdev.crm.dynamics.com
).Aggiorna
<APPID>
e<TENANT ID>
con i tuoi valori.Se stai usando le credenziali, incolla il file export-and-branch-solution.yml invece del contenuto del file export-and-branch-solution-with-spn-auth.yml. Aggiorna
<USERNAME>
con il nome utente che stai utilizzando per connetterti all'ambiente.
Suggerimento
Se non hai familiarità con le azioni GitHub e vuoi saperne di più, consulta la documentazione ufficiale all'indirizzo https://docs.github.com/en/actions.
A questo punto puoi eseguire il commit delle modifiche. Seleziona Avvia commit, digita Crea export yml nel campo del titolo, quindi aggiungi una descrizione (facoltativa). Quindi fai clic su Esegui commit del nuovo file.
Congratulazioni, hai appena creato il tuo primo flusso di lavoro GitHub utilizzando le seguenti azioni:
- Chi sono: Garantisce che tu possa eseguire correttamente Connetti sul ambiente da cui stai esportando.
- Esporta soluzione: esporta il file della soluzione dal tuo sviluppo ambiente.
- Decomprimi soluzione: Il file della soluzione esportato dal server è un file compresso (zip) con file di configurazione consolidati. Questi file iniziali non sono adatti per la gestione del codice sorgente in quanto non sono strutturati per rendere possibile ai sistemi di gestione del codice sorgente di eseguire correttamente la differenziazione dei file e acquisire le modifiche che si desidera applicare al controllo del codice sorgente. Devi "decomprimere" i file della soluzione per renderli adatti per l'archiviazione e l'elaborazione del controllo del codice sorgente.
- Branch Solution: crea un nuovo ramo in cui archiviare la soluzione esportata.
Testare il flusso di lavoro di esportazione e decompressione
Successivamente, verifichi che il flusso di lavoro venga eseguito. Vai a Azioni, Esegui flusso di lavoro e scegli Esegui flusso di lavoro. Se hai un nome di soluzione diverso da "ALMLab", cambia il valore qui ma lascia gli altri valori immutati.
Dopo 5-10 secondi verrà avviato il flusso di lavoro e potrai selezionare il flusso di lavoro in esecuzione per monitorare l'avanzamento.
Dopo che il flusso di lavoro è stato completato, verifica che sia stato creato un nuovo ramo con la soluzione decompressa nella cartella solutions/ALMLab. Vai alla scheda Codice ed espandi il menu a discesa rami .
Seleziona il ramo creato dall'azione.
Verifica che la cartella solutions/ALMLab sia stata creata nel nuovo ramo, quindi crea una richiesta pull per unire le modifiche nel ramo principale. Fai clic su Contribuisci e nel flyout fai clic su Apri richiesta pull.
Nella schermata Apri una richiesta Pull, aggiungi un titolo e una descrizione, come desiderato, quindi fai clic su Crea richiesta pull.
La schermata si aggiornerà mostrando la richiesta pull appena creata. Quando viene creata la richiesta pull, verrà fornita una conferma che mostra che il nostro ramo non ha conflitti con il ramo principale. Questa conferma significa che le modifiche possono essere unite automaticamente nel ramo principale. Fare clic su Unisci richiesta pull e quindi fare clic su Conferma unione. Facoltativamente, fai clic su Elimina ramo per ripulire il ramo ora obsoleto.
Torna al ramo predefinito (principale) e verifica che la soluzione ora sia disponibile anche in quella posizione.
Creare un flusso di lavoro riutilizzabile per generare un artefatto di compilazione e importarlo in produzione
In questa sezione creeremo un flusso di lavoro aggiuntivo che:
- Crea un soluzione gestita e la pubblica come artefatto GitHub
- Importa l'artefatto di compilazione nell'ambiente di produzione
Vai a Azioni e seleziona Nuovo flusso di lavoro.
Scegli configura un flusso di lavoro.
Rinomina il titolo del flusso di lavoro in "release-solution-to-prod-with-inputs" e copia il contenuto dal file release-solution-to-prod-with-inputs.yml nella schermata Modifica nuovo file.
Esegui il commit delle modifiche. Scegli Avvia commit e quindi aggiungi un titolo e una descrizione (facoltativo). Quindi seleziona Esegui commit del nuovo file.
Chiamare il flusso di lavoro riutilizzabile durante l'evento di rilascio
In questa sezione, chiameremo il flusso di lavoro riutilizzabile durante l'evento di rilascio.
Vai a Azioni e seleziona Nuovo flusso di lavoro.
Scegli impostare personalmente un flusso di lavoro.
Rinomina il titolo del flusso di lavoro in 'release-action-call' e copia il contenuto dal file release-action-call.yml e incollalo nella schermata Modifica nuovo file.
Aggiorna le seguenti variabili nel nuovo file di flusso di lavoro:
- Aggiorna
<BUILD_ENVIRONMENT>
con l'URL dell'ambiente di compilazione che stai utilizzando per generare la soluzione gestita. Ad esempio:https://poweractionsbuild.crm.dynamics.com
. - Aggiorna
<PROD_ENVIRONMENT>
con l'URL dell'ambiente di produzione in cui stai eseguendo la distribuzione. Ad esempio: https://poweractionsprod.crm.dynamics.com. - Aggiorna
<APP_ID>
con l'ID dell'applicazione (client) che si trova nel pannello Registrazioni app del portale Microsoft Azure facendo clic sulla registrazione creata in precedenza in questa esercitazione. - Aggiorna
<TENANT_ID>
con l'ID directory (tenant) che si trova nel pannello Registrazioni app del portale Microsoft Azure facendo clic sulla registrazione creata in precedenza in questa esercitazione.
- Aggiorna
Esegui il commit delle modifiche. Scegli Avvia commit e quindi aggiungi un titolo (facoltativo) e una descrizione (facoltativo). Quindi seleziona Esegui commit del nuovo file.
Testare il flusso di lavoro rilascio a produzione
Ora sei pronto per testare l'ultimo flusso di lavoro. Questo flusso di lavoro viene attivato quando una nuova versione viene distribuita nell'ambiente di produzione.
Vai a Versioni.
Seleziona Bozza di una nuova versione.
Aggiungi un tag di versione, un titolo e scegli Pubblica versione.
Seleziona Azioni per visualizzare il flusso di lavoro in esecuzione.
Scegli il flusso di lavoro in esecuzione per visualizzare le azioni mentre vengono eseguite.
Attendi il completamento di ogni azione.
Al termine del completamento del flusso di lavoro, accedi all'ambiente di produzione e verifica che la soluzione sia stata distribuita come soluzione gestita.
Distribuire l'aggiornamento ed esaminare le modifiche prima della versione di produzione
Ora testeremo il processo end-to-end e quindi vedremo come visualizzare e convalidare le modifiche a un'app prima che venga distribuita all'ambiente di produzione.
Passa alla soluzione ALMLab nel tuo ambiente di sviluppo e scegli Modifica oppure fai clic sul nome visualizzato della soluzione.
Seleziona e visualizza la tabella Richiesta di indisponibilità.
Fai clic su + Aggiungi colonna e crea la nuova colonna come mostrato nella figura seguente.
Valori dei campi aggiornati:**
- nome visualizzato: Approvato
- Tipo di dati: Sì/No
Fare clic su Fatto.
Fai clic su Salva tabella
Torna alla scheda Azioni dei tuoi repository GitHub, scegli Esegui flusso di lavoro e seleziona il pulsante Esegui flusso di lavoro.
Dopo 5-10 secondi viene avviato il flusso di lavoro e puoi fare clic sul flusso di lavoro in esecuzione per monitorarne l'avanzamento.
Al completamento del flusso di lavoro, vai al nuovo ramo selezionando Codice e quindi Rami.
Seleziona il ramo che è stato creato dall'espansione di contribuire e fai clic su Apri richiesta pull.
Aggiungi un titolo (facoltativo) e poi fai clic su Crea richiesta pull.
Dopo gli aggiornamenti del contenuto, fai clic sulla scheda File modificati.
Nota che le modifiche alla soluzione sono evidenziate in verde per indicare che questa sezione del file è stata aggiunta quando confrontata allo stesso file nel ramo principale.
Torna alla scheda Conversazione. Seleziona Richieste di pull e quindi seleziona la richiesta pull precedentemente creata.
Nella pagina Richiesta pull, seleziona Squash e merge per unire il file della soluzione aggiornato nel tuo ramo principale ed eliminare facoltativamente quello che ora è unito a quello principale.
Segui i passaggi nella sezione Testare il flusso di lavoro rilascio a produzione per creare una nuova versione e verificare che la soluzione aggiornata sia stata distribuita all'ambiente di produzione.
Congratulazioni, hai configurato correttamente un flusso di lavoro CI/CD di esempio utilizzando le Azioni GitHub!