Distribuire gli artefatti delle richieste di pull con pipeline di versione classiche
Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019
Le richieste pull offrono un modo efficace per esaminare le modifiche al codice prima di unirle alla codebase. Tuttavia, queste modifiche possono introdurre problemi che possono essere difficili da trovare senza compilare e distribuire l'applicazione in un ambiente specifico. I trigger di richiesta pull consentono di definire un set di criteri che devono essere soddisfatti prima della distribuzione. Questo articolo illustra come configurare i trigger delle richieste pull con Azure Repos e repository GitHub per distribuire gli artefatti della pipeline usando pipeline di rilascio classica.
Prerequisiti
Prodotto | Requisiti |
---|---|
Azure DevOps | - Un progetto Azure DevOps. - Codice sorgente ospitato in Azure Repos o GitHub. Se non si ha un repository, è possibile usare l'app di esempio pipelines-dotnet-core per crearne una. - Una pipeline funzionante per il tuo repository. - Una pipeline classica di distribuzione. Se non ne hai uno, allora configurare una pipeline di rilascio Classica. |
Implementazioni delle richieste pull
I trigger delle richieste pull consentono di mantenere una migliore qualità del codice, rilasciare con maggiore attendibilità e individuare eventuali problemi all'inizio del ciclo di sviluppo.
La configurazione della distribuzione delle pull request è un processo in due passaggi: in primo luogo, è necessario configurare un trigger per le pull request e poi configurare i criteri dei branch (Azure Repos) o i controlli di stato (GitHub) per le pipeline di rilascio.
1. Abilitare i trigger di richiesta pull
Quando i trigger di richiesta pull sono abilitati, viene creata una nuova versione ogni volta che un nuovo artefatto diventa disponibile in un flusso di lavoro di richiesta pull:
Accedere all'organizzazione di Azure DevOps e quindi passare al progetto.
Selezionare Pipeline>Rilasci e quindi selezionare la definizione della pipeline di rilascio.
Nella sezione artefatti, selezionare l'icona trigger di distribuzione continua.
Attivare o disattivare l'impostazione trigger della richiesta pull per abilitarla.
Scegli il tuo branch di destinazione dal menu a discesa.
Per distribuire l'applicazione in una fase specifica, scegliere esplicitamente per quella fase. Nella sezione fasi sono elencate le fasi abilitate per le distribuzioni delle richieste pull.
Per abilitare la distribuzione delle richieste pull per una fase:
- Selezionare l'icona condizioni di pre-distribuzione per la fase.
- Vai a Trigger >dopo il rilascio.
- Attiva l'impostazione distribuzione della richiesta pull per abilitarla.
Importante
Non è consigliato abilitare le distribuzioni automatiche delle pull request per le fasi di produzione.
2. Configurare i criteri dei rami
È possibile usare i criteri di ramo per implementare un elenco di criteri che devono essere soddisfatti prima di poter unire una richiesta pull.
Accedere all'organizzazione di Azure DevOps e quindi passare al progetto.
Selezionare Repos>Rami per accedere all'elenco dei rami per il repository.
Selezionare il menu di scelta rapida per il ramo appropriato, quindi selezionare Criteri di ramo.
...
Selezionare Aggiungi criteri di stato, quindi selezionare uno stato da controllare dal menu a discesa. Selezionare lo stato corrispondente alla definizione di versione e quindi selezionare Salva.
Importante
La definizione di versione deve essere eseguita almeno una volta con il trigger di richiesta pull abilitato per visualizzare l'elenco degli stati. Per altri dettagli, vedere Configurare un criterio di ramo per un servizio esterno.
Dopo aver aggiunto i criteri di stato, gli utenti non potranno unire le modifiche al ramo di destinazione a meno che la richiesta pull non abbia uno stato
succeeded
.È possibile controllare lo stato delle politiche nella pagina Panoramica della richiesta pull. A seconda delle impostazioni, lo stato della versione verrà visualizzato nelle sezioni Obbligatorio, Facoltativoo Stato. Lo stato viene aggiornato ogni volta che viene attivata la pipeline.