ALM con Azure DevOps

Completato

Gli architetti di soluzioni sono i principali attori della definizione del processo di promozione delle modifiche dallo sviluppo alla produzione. Uno dei loro compiti è definire il numero di fasi, come ad esempio sviluppo > test > produzione, e i processi di promozione, indipendentemente dal fatto che siano manuali o automatizzati.

Microsoft sviluppa strumenti che supportano questo processo con Microsoft Azure DevOps mediante l'integrazione continua (CI) e la distribuzione continua (CD).

Questa sezione fornisce una panoramica di Azure DevOps e informazioni su come usare DevOps con Microsoft Power Platform per automatizzare le distribuzioni.

Azure DevOps

Azure DevOps fornisce servizi di sviluppo ai team di supporto per pianificare il lavoro, collaborare allo sviluppo di codice e creare e distribuire applicazioni.

Diagramma che mostra la collaborazione in Azure DevOps.

Azure DevOps include molte funzionalità per lo sviluppo di applicazioni:

  • Azure Boards: consente di pianificare e monitorare il lavoro e di discuterne con i membri dei team.
  • Azure Pipelines: per automatizzare l'integrazione continua e la distribuzione continua (CI/CD).
  • Azure Repos: consente di controllare il codice sorgente per archiviare e tenere traccia delle modifiche.
  • Azure Test Plans: per pianificare, implementare e monitorare test con script.
  • Azure Artifacts: per pubblicare soluzioni create mediante pipeline di compilazione.

Pipeline

Con Power Apps è possibile creare strumenti per automatizzare le attività comuni di compilazione e distribuzione relative a Power Apps mediante Azure Pipelines.

È possibile usare le pipeline di compilazione per:

  • Creare ambienti di sviluppo.
  • Confermare le modifiche dallo sviluppo al controllo del codice sorgente.
  • Abilitare lo strumento Verifica soluzione.
  • Eseguire test automatizzati.
  • Creare soluzioni di output a partire dal controllo del codice sorgente (ad esempio gestito o non gestito).

Le pipeline di rilascio consentono di:

  • Recuperare soluzioni da pipeline di compilazione e distribuirle in uno o più ambienti di test o di produzione.
  • Eseguire test automatizzati nell'ambito del processo di rilascio.
  • Interrompere il lavoro per ottenere le approvazioni prima di passare all'ambiente successivo.

Le attività in Microsoft Power Platform Build Tools possono essere usate con qualsiasi altra attività di Azure DevOps disponibile per creare pipeline di compilazione e rilascio. Alcune delle pipeline che i team creano più spesso sono quelle di avvio, esportazione dall'ambiente di sviluppo, compilazione e rilascio.

Diagramma di Azure DevOps con Microsoft Power Platform.

Metodologie di distribuzione

Quando si distribuiscono soluzioni tramite una pipeline di rilascio, è necessario prendere la decisione di eseguire il push manuale o automatico del rilascio. Le esecuzioni della pipeline di rilascio possono essere avviate manualmente da un utente Azure DevOps, automaticamente in base a una pianificazione o attivate da una richiesta Pull. La distribuzione continua può essere abilitata su una pipeline di rilascio per eseguire il push della build della soluzione più recente ad altri ambienti non appena la build diventa disponibile.

Per correzioni immediate a una soluzione, un trigger manuale è probabilmente il metodo preferito per rendere disponibile la build più recente negli ambienti upstream il più rapidamente possibile, mentre un trigger di richiesta pianificato o pull è più adatto quando vengono eseguiti aggiornamenti regolari alle soluzioni.

Screenshot dei trigger di distribuzione continua e richiesta pull della pipeline di rilascio.

Screenshot del trigger di rilascio pianificato della pipeline di rilascio.

Si consideri questo esempio:

Contoso Bank dispone di un team di sviluppatori che lavora su una soluzione Power Platform complessa da sottoporre a varie fasi di test prima che raggiunga la produzione. Il team di sviluppo utilizza metodologie Agile per i propri progetti e applica un modello regolare di cicli di compilazione e rilascio. Per questo motivo il team di sviluppo di Contoso Bank usa il trigger della pipeline di rilascio pianificato, dove la pianificazione si basa sui cicli sprint predefiniti. Questo è un approccio automatizzato al push dei rilasci.

Tuttavia, se viene scoperto un bug grave in un ambiente QAT, gli sviluppatori possono scegliere di correggere il bug con una nuova build e attivare manualmente la pipeline di rilascio in modo che i test nell'ambiente QAT possano continuare il più rapidamente possibile.

È possibile che Contoso Bank sia impegnata in un progetto più piccolo senza scadenze rigorose per i cicli di rilascio. In tal caso, potrebbe essere preferibile usare un trigger manuale per la pipeline di rilascio perché non esiste un ritmo regolare al quale vengono rese disponibili nuove build.

Per ulteriori informazioni sull'uso di DevOps per passare dall'ALM manuale a quello automatizzato e sulle procedure consigliate relative alla metodologia di distribuzione più adatta alle specifiche esigenze, consultare Uso di DevOps per passare dall'ALM manuale a quello automatizzato.

Strumenti di automazione alternativi

È possibile automatizzare le distribuzioni senza Azure DevOps mediante questi strumenti alternativi:

  • Dataverse e le API di amministrazione consentono di automatizzare le distribuzioni con un qualsiasi linguaggio supportato.
  • PowerShell può essere usato al posto delle attività di compilazione per un maggiore controllo.
  • Power Automate può essere usato con i connettori di amministrazione di piattaforme per automatizzare le distribuzioni.
  • Le azioni GitHub sono attualmente disponibili in anteprima.