Panoramica dei controlli di rilascio e delle approvazioni

Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019 | TFS 2018

Nota

Microsoft Visual Studio Team Foundation Server 2018 e versioni precedenti presentano le differenze seguenti nella denominazione:

  • Le pipeline per la compilazione e la versione sono denominate definizioni
  • Le esecuzioni vengono chiamate build
  • Le connessioni al servizio sono denominate endpoint di servizio
  • Le fasi sono denominate ambienti
  • I processi vengono chiamati fasi

Le pipeline di versione consentono ai team di distribuire continuamente l'applicazione in diverse fasi con un rischio più basso e con un ritmo più rapido. Le distribuzioni in ogni fase possono essere completamente automatizzate usando processi e attività.

Teams può anche sfruttare la funzionalità Approvazioni e Gates per controllare il flusso di lavoro della pipeline di distribuzione. Ogni fase in una pipeline di versione può essere configurata con condizioni di pre-distribuzione e post-distribuzione che possono includere l'attesa che gli utenti approvino o rifiutino manualmente le distribuzioni e controlli con altri sistemi automatizzati che vengono soddisfatte condizioni specifiche. Inoltre, i team possono configurare le convalide manuali per sospendere la pipeline di distribuzione e richiedere agli utenti di eseguire attività manuali e quindi riprendere o rifiutare la distribuzione.

Il diagramma seguente illustra il flusso di lavoro della pipeline di versione.

The release pipeline workflow

Usando controlli, approvazioni e intervento manuale, è possibile assumere il controllo completo delle versioni per soddisfare un'ampia gamma di requisiti di distribuzione. Gli scenari tipici in cui le approvazioni, i controlli e l'intervento manuale sono utili includono quanto segue.

Scenario Funzionalità da usare
Un utente deve convalidare manualmente la richiesta di modifica e approvare la distribuzione in una determinata fase. Approvazioni di pre-distribuzione
Un utente deve disconnettersi manualmente dopo la distribuzione prima che il rilascio venga attivato in altre fasi. Approvazioni post-distribuzione
Un team vuole assicurarsi che non siano presenti problemi attivi nell'elemento di lavoro o nel sistema di gestione dei problemi prima di distribuire una compilazione in una fase. Controlli di pre-distribuzione
Un team vuole assicurarsi che non siano presenti eventi imprevisti segnalati dopo la distribuzione, prima di attivare una versione. Controlli post-distribuzione
Dopo la distribuzione, un team vuole attendere un periodo di tempo specificato prima di richiedere agli utenti di disconnettersi. Controlli post-distribuzione e approvazioni post-distribuzione
Durante la distribuzione, un utente deve seguire manualmente istruzioni specifiche e quindi riprendere la distribuzione. Intervento manuale o convalida manuale
Durante la distribuzione, un team vuole chiedere agli utenti di immettere un valore per un parametro usato dalle attività di distribuzione o consentire agli utenti di modificare la versione. Intervento manuale o convalida manuale
Durante la distribuzione, un team vuole attendere che i portali di monitoraggio o informazioni rilevino eventuali eventi imprevisti attivi, prima di continuare con altri processi di distribuzione. Pianificato

È possibile combinare tutte e tre le tecniche all'interno di una pipeline di versione per soddisfare completamente i propri requisiti di distribuzione.

È anche possibile installare un'estensione che si integra con ServiceNow per controllare e gestire le distribuzioni tramite metodologie di gestione dei servizi, ad esempio ITIL. Per altre informazioni, vedere Integrare con La gestione delle modifiche di ServiceNow.

Nota

Il ritardo di tempo prima dell'esecuzione dei controlli di pre-distribuzione è limitato a 48 ore. Se invece è necessario ritardare l'avvio complessivo dei gate, è consigliabile usare un'attività di ritardo nella pipeline di versione.

# Delay further execution of a workflow by a fixed time
pool: server
steps:
- task: Delay@1
  displayName: 'Delay by 5 minutes'
  inputs:
    delayForMinutes: 5

Nota

L'attivitàdi ritardo può essere usata solo in un processo senza agente.

Passaggi successivi