Usare Azure Pipelines
Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019
Azure Pipelines supporta l'integrazione continua (CI) e il recapito continuo (CD) per testare, compilare e distribuire continuamente il codice. A tale scopo, definire una pipeline.
Il modo più recente per compilare le pipeline consiste nell'editor di pipeline YAML. È anche possibile usare le pipeline classiche con l'editor classico.
Automatizzare test, compilazioni e recapito
L'integrazione continua (CI) automatizza i test e le compilazioni per il progetto. L'integrazione continua consente di rilevare bug o problemi all'inizio del ciclo di sviluppo, quando sono più semplici e veloci da correggere. Gli elementi noti come artefatti vengono prodotti dai sistemi CI. Vengono usate dalle pipeline di versione del recapito continuo per guidare le distribuzioni automatiche.
Il recapito continuo distribuisce e testa automaticamente il codice in più fasi per favorire la qualità. I sistemi di integrazione continua producono artefatti distribuibili, che includono l'infrastruttura e le app. Le pipeline di versione automatizzate usano questi artefatti per rilasciare nuove versioni e aggiornamenti nella destinazione desiderata.
Integrazione continua (CI) | Recapito continuo (CD) |
---|---|
- Aumentare il code coverage - Creare più velocemente suddividendo le esecuzioni di test e compilazione - Assicurarsi automaticamente di non spedire codice danneggiato - Eseguire test continuamente |
- Distribuire automaticamente il codice nell'ambiente di produzione - Assicurarsi che le destinazioni di distribuzione abbiano il codice più recente - Usare il codice testato dal processo di integrazione continua |
Definire le pipeline usando la sintassi YAML
La pipeline viene definita in un file YAML denominato azure-pipelines.yml
con il resto dell'app.
- Alla pipeline è assegnata una versione in base al codice. Segue la stessa struttura di diramazione. È possibile ottenere la convalida delle modifiche tramite le revisioni del codice nelle richieste pull e i criteri di creazione dei rami.
- Ogni ramo usato può modificare la pipeline modificando il
azure-pipelines.yml
file. Altre informazioni sulla considerazione del ramo per le pipeline YAML. - Una modifica del processo di compilazione può causare un'interruzione o un risultato imprevisto. Poiché la modifica riguarda il controllo della versione con il resto della codebase, è possibile identificare più facilmente il problema.
Seguire questa procedura di base:
- Configurare Azure Pipelines per l'uso del repository Git.
- Modificare il
azure-pipelines.yml
file per definire la compilazione. - Eseguire il push del codice nel repository di controllo della versione. Questa azione attiva il trigger predefinito di compilazione e distribuzione e quindi monitora i risultati.
Il codice è ora aggiornato, compilato, testato e inserito nel pacchetto. Può essere distribuito in qualsiasi destinazione.
Definire le pipeline usando l'interfaccia classica
Creare e configurare pipeline nel portale Web di Azure DevOps con l'editor dell'interfaccia utente classica. Si definisce una pipeline di compilazione per compilare e testare il codice e quindi pubblicare gli artefatti. Si definisce inoltre una pipeline di versione per utilizzare e distribuire tali artefatti nelle destinazioni di distribuzione.
Seguire questa procedura di base:
- Configurare Azure Pipelines per l'uso del repository Git.
- Usare l'editor classico di Azure Pipelines per creare e configurare le pipeline di compilazione e versione.
- Eseguire il push del codice nel repository di controllo della versione. Questa azione attiva la pipeline ed esegue attività come la compilazione o i test del codice.
La compilazione crea un artefatto usato dal resto della pipeline per eseguire attività come la distribuzione nella gestione temporanea o nell'ambiente di produzione.
Il codice è ora aggiornato, compilato, testato e inserito nel pacchetto. Può essere distribuito in qualsiasi destinazione.
Disponibilità di funzionalità
Alcune funzionalità della pipeline sono disponibili solo quando si usa YAML o quando si definiscono pipeline di compilazione o versione con l'interfaccia classica. La tabella seguente indica quali funzionalità sono supportate e per quali attività e metodi.
Funzionalità | YAML | Build classica | Pipeline di versione | Note |
---|---|---|---|---|
Agenti | ✅ | ✅ | ✅ | Specifica una risorsa necessaria in cui viene eseguita la pipeline. |
Approvazioni | ✅ | ❌ | ✅ | Definisce un set di convalide necessarie prima di completare una fase di distribuzione. |
Elementi | ✅ | ✅ | ✅ | Supporta la pubblicazione o l'utilizzo di tipi di pacchetto diversi. |
Memorizzazione nella cache | ✅ | ✅ | ❌ | Riduce il tempo di compilazione consentendo di riutilizzare gli output o le dipendenze scaricate da un'esecuzione in un'esecuzione successiva. In anteprima, disponibile solo con Azure Pipelines. |
Condizioni | ✅ | ✅ | ✅ | Specifica le condizioni da soddisfare prima di eseguire un processo. |
Processi del contenitore | ✅ | ❌ | ❌ | Specifica i processi da eseguire in un contenitore. |
Richieste | ✅ | ✅ | ✅ | Assicura che i requisiti della pipeline vengano soddisfatti prima di eseguire una fase della pipeline. Richiede agenti self-hosted. |
Dipendenze | ✅ | ✅ | ✅ | Specifica un requisito che deve essere soddisfatto per eseguire il processo o la fase successiva. |
Gruppi di distribuzione | ❌ | ❌ | ✅ | Definisce un set logico di computer di destinazione della distribuzione. |
Processi del gruppo di distribuzione | ❌ | ❌ | ✅ | Specifica un processo da rilasciare in un gruppo di distribuzione. |
Processi di distribuzione | ✅ | ❌ | ❌ | Definisce la procedura di distribuzione. |
Ambiente | ✅ | ❌ | ❌ | Rappresenta una raccolta di risorse destinate alla distribuzione. Disponibile solo con Azure Pipelines. |
Cancelli | ❌ | ❌ | ✅ | Supporta la raccolta automatica e la valutazione dei segnali di integrità esterni prima di completare una fase di rilascio. Disponibile solo con versione classica. |
Processi | ✅ | ✅ | ✅ | Definisce la sequenza di esecuzione di un set di passaggi. |
Connessioni al servizio | ✅ | ✅ | ✅ | Abilita una connessione a un servizio remoto necessario per eseguire attività in un processo. |
Contenitori del servizio | ✅ | ❌ | ❌ | Consente di gestire il ciclo di vita di un servizio contenitore. |
Fasi. | ✅ | ❌ | ✅ | Organizza i processi all'interno di una pipeline. |
Gruppi di attività | ❌ | ✅ | ✅ | Incapsula una sequenza di attività in una singola attività riutilizzabile. Se si usa YAML, vedere i modelli. |
Attività | ✅ | ✅ | ✅ | Definisce i blocchi predefiniti che costituiscono una pipeline. |
Modelli | ✅ | ❌ | ❌ | Definisce i parametri, la logica e il contenuto riutilizzabili. |
Trigger | ✅ | ✅ | ✅ | Definisce l'evento che causa l'esecuzione di una pipeline. |
Variabili | ✅ | ✅ | ✅ | Rappresenta un valore da sostituire con i dati da passare alla pipeline. |
Gruppi di variabili | ✅ | ✅ | ✅ | Usare per archiviare i valori che si vuole controllare e rendere disponibili in più pipeline. |
Passaggi successivi
Articoli correlati
Commenti e suggerimenti
https://aka.ms/ContentUserFeedback.
Presto disponibile: Nel corso del 2024 verranno gradualmente disattivati i problemi di GitHub come meccanismo di feedback per il contenuto e ciò verrà sostituito con un nuovo sistema di feedback. Per altre informazioni, vedereInvia e visualizza il feedback per