Creare un hook del servizio per Azure DevOps con Slack

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

Questo articolo illustra come pubblicare messaggi a Slack in risposta a eventi nell'organizzazione di Azure DevOps, ad esempio compilazioni completate, modifiche al codice, richieste pull, versioni, modifiche agli elementi di lavoro e altro ancora.

Nota

Per Azure DevOps Services, è consigliabile usare la suite di app seguente che offrono funzionalità da integrare con Slack.

App di Azure Boards per Slack

L'app Azure Boards per Slack consente di creare e monitorare facilmente gli elementi di lavoro dai canali Slack. È possibile creare elementi di lavoro usando un comando barra o usare azioni di messaggio per convertire le conversazioni nel canale in elementi di lavoro. È anche possibile configurare e gestire le sottoscrizioni per ricevere notifiche nel canale ogni volta che gli elementi di lavoro vengono creati o aggiornati.

Azure Pipelines app for Slack (App di Azure Pipelines per Slack)

L'app Azure Pipelines per Slack consente di monitorare facilmente gli eventi nelle pipeline. È possibile configurare e gestire le sottoscrizioni per le compilazioni completate, le versioni, le approvazioni in sospeso e altro ancora dall'app e ricevere notifiche per questi eventi nei relativi canali. È anche possibile approvare le distribuzioni di versione dai canali.

App Azure Repos per Slack

L'app Azure Repos per Slack consente di monitorare facilmente gli eventi nei repository. È possibile configurare e gestire le sottoscrizioni per i commit del codice, la creazione e gli aggiornamenti della richiesta pull e altro ancora e ricevere notifiche per questi eventi nei relativi canali.

Prerequisiti

Fare riferimento alla documentazione di Slack, Invio di messaggi tramite webhook in ingresso per comprendere il processo di utilizzo di Web Hook per eseguire il push delle informazioni in un canale Slack.

Creare un'app personalizzata in Slack

  1. Creare una nuova app SlackCreare un'app Slack

  2. Attivare Web Hook in ingresso e aggiungere un nuovo web hook all'area di lavoro desiderata Screenshot dell'hook Web in ingresso.

    Screenshot dell'interruttore Web hook.

  3. Selezionare il canale per il quale è necessario creare Web Hook.

    Screenshot di Create Web Hook (Crea web hook).

  4. Copiare l'URL di Web Hook e passare ad Azure DevOps.

    Screenshot di Copy Web Hook (Copia web hook).

Creare una sottoscrizione hook del servizio nell'organizzazione

  1. Passare alla pagina Hook del servizio del progetto.

    https://{orgName}/{project_name}/_settings/serviceHooks

    Screenshot della pagina Amministrazione progetto.

    Selezionare Crea sottoscrizione.

  2. Scegliere i tipi di eventi da visualizzare nel canale Slack.

    È possibile filtrare ognuno dei trigger in modi specifici. Ad esempio, filtrare il trigger creato dalla richiesta pull nel repository in cui si verifica la richiesta pull, il ramo di destinazione a cui si applica e i membri del team necessari o invitati a esaminare la richiesta.

  3. Incollare l'URL di Web Hook dall'integrazione di Slack creata e selezionare Fine.

    Screenshot della finestra di dialogo Azione con l'URL webhook.

    Quando l'evento si verifica nel progetto, viene visualizzata una notifica nel canale Slack del team.

    Screenshot che mostra una notifica in un canale Slack.

Domande frequenti

D: Perché gli eventi della richiesta pull non sono disponibili come opzione quando si configura il trigger?

R: Le richieste pull sono disponibili solo con i progetti che usano Git. Se il progetto usa TFVC, i trigger di eventi pull non sono disponibili e l'evento di codice è denominato "Code checked in" invece di "Code pushed".

D: Come è possibile visualizzare più eventi nel canale Slack?

R: Creare una nuova sottoscrizione per ogni tipo di evento desiderato. Ad esempio, se si vogliono visualizzare errori di compilazione e nuovi elementi di lavoro nel canale Slack, creare altre due sottoscrizioni.