Condividi tramite


Consumer degli hook del servizio

Azure DevOps Services | Azure DevOps Server 2022 | Azure DevOps Server 2020

È possibile usare un hook del servizio per eseguire un'azione su un servizio consumer quando si verifica un evento in un progetto Azure DevOps. Ad esempio, un hook del servizio può inviare una notifica a un utente quando un build ha esito negativo.

Per configurare un service hook, crea una sottoscrizione che specifica l'evento, il consumer e l'azione. Con alcuni consumatori, si crea una sottoscrizione nel servizio consumatori, non in Azure DevOps. Questo articolo fornisce informazioni sulle impostazioni consumer usate quando si crea una sottoscrizione a livello di codice in Azure DevOps.

Quando si crea una sottoscrizione in Azure DevOps, è possibile selezionare uno dei consumer seguenti:

Per informazioni su questi consumer e altri utenti che è possibile integrare con hook di servizio, vedere Servizi disponibili.

Bus di servizio di Azure

Il bus di servizio è un servizio di messaggistica che facilita la comunicazione asincrona tra applicazioni e servizi. Come consumer di hook del servizio, fornisce l'integrazione con code e argomenti di Service Bus e anche con Hub di Notifica di Azure.

Inviare un messaggio a un hub di notifica

Questa azione invia una notifica di modello generica a un'istanza specificata di Hub di notifica.

  • ID cliente: azureServiceBus

  • ID azione: serviceBusNotificationHubSend

  • Eventi supportati: tutti gli eventi

  • Impostazioni:

    ID di input Nome Descrizione Tipo di dati Obbligatorio
    connectionString Stringa di connessione SAS Stringa di connessione della firma di accesso condivisa da usare per connettersi a Service Bus. Questo stringa di connessione è disponibile nella portale di Azure. string
    notificationHubName Nome hub di notifica Nome dell'hub di notifica a cui inviare la notifica. Il nome può contenere solo lettere, numeri, punti, trattini, barre e caratteri di sottolineatura. Il nome deve iniziare e terminare con una lettera o un numero. L'hub dovrebbe già esistere. string
    tagsExpression Tag Espressione di tag destinata a un set specifico di dispositivi. Per informazioni aggiuntive, vedere Routing ed espressioni tag. string NO

Inviare un messaggio a una coda del bus di servizio

Questa azione invia una rappresentazione di stringa JSON di un evento a una coda del bus di servizio specificata. Per altre informazioni, vedere Code, argomenti e sottoscrizioni del bus di servizio.

  • ID consumatore: azureServiceBus

  • ID azione: serviceBusQueueSend

  • Eventi supportati: tutti gli eventi

  • Impostazioni:

    ID di input Nome Descrizione Tipo di dati Obbligatorio
    AuthenticationMechanismInputId Modalità di autenticazione Modalità di autenticazione da usare: una stringa di connessione o una connessione al servizio. string NO
    ServiceConnectionInputId Connessioni di Azure Resource Manager ID di una connessione al servizio. string NO
    ServiceBusHostNameInputId Nome host del bus di servizio Nome host nel portale di Azure, nel formato sb://<Service-Bus-name>.servicebus.windows.net. string NO
    connectionString Stringa di connessione SAS Stringa di connessione SAS da usare per connettersi al Service Bus. Questo stringa di connessione è disponibile nella portale di Azure. string NO
    queueName Nome della coda Nome della coda a cui inviare il messaggio. Il nome può contenere solo lettere, numeri, punti, trattini, barre e caratteri di sottolineatura. Il nome deve iniziare e terminare con una lettera o un numero. Se la coda non esiste, viene creata se la stringa di connessione specificata dispone delle autorizzazioni necessarie. string
    bypassSerializer Invia come stringa non serializzata Opzione per l'invio di messaggi al bus di servizio come stringhe nonrializzate anziché come stringhe serializzate .NET. Selezionare questa impostazione quando il ricevitore non è un client .NET, ad esempio quando il client usa la libreria client di Azure per Node. boolean NO
    resourceDetailsToSend Dettagli risorsa da inviare Numero di campi di risorse da inviare alla coda. Le possibilità sono tutti i campi, un numero minimo e nessuno di essi. string NO
    messagesToSend Messaggi da inviare Tipi di messaggi da inviare alla coda. string NO
    detailedMessagesToSend Messaggi dettagliati da inviare Tipi di messaggi dettagliati da inviare alla coda. string NO

Inviare un messaggio a un argomento del bus di servizio

Questa azione invia una rappresentazione di stringa JSON di un evento a un argomento del bus di servizio specificato. Per ulteriori informazioni, vedere Usare il portale di Azure per creare un argomento del bus di servizio e le sottoscrizioni all'argomento.

  • ID consumatore: azureServiceBus

  • ID azione: serviceBusTopicSend

  • Eventi supportati: tutti gli eventi

  • Impostazioni:

    ID di input Nome Descrizione Tipo di dati Obbligatorio
    AuthenticationMechanismInputId Modalità di autenticazione Modalità di autenticazione da usare. string NO
    ServiceConnectionInputId Connessioni di Azure Resource Manager ID di una connessione al servizio. string NO
    ServiceBusHostNameInputId Nome host del bus di servizio Nome host nel portale di Azure, nel formato sb://{Service-Bus-name}.servicebus.windows.net. string NO
    connectionString Stringa di connessione SAS Stringa di connessione SAS da usare per connettersi al Service Bus. Questo stringa di connessione è disponibile nella portale di Azure. string NO
    topicName Nome argomento Nome dell'argomento a cui inviare il messaggio. Il nome può contenere solo lettere, numeri, punti, trattini, barre e caratteri di sottolineatura. Il nome deve iniziare e terminare con una lettera o un numero. Se l'argomento non esiste, viene creato se la stringa di connessione specificata dispone delle autorizzazioni necessarie. string
    bypassSerializer Invia come stringa non serializzata Opzione per l'invio di messaggi al bus di servizio come stringhe nonrializzate anziché come stringhe serializzate .NET. Selezionare questa impostazione quando il ricevitore non è un client .NET, ad esempio quando il client usa la libreria client di Azure per Node. boolean NO
    resourceDetailsToSend Dettagli risorsa da inviare Numero di campi di risorse da inviare all'argomento. Le possibilità sono tutti i campi, un numero minimo e nessuno di essi. string NO
    messagesToSend Messaggi da inviare Tipi di messaggi da inviare all'argomento. string NO
    detailedMessagesToSend Messaggi dettagliati da inviare Tipi di messaggi dettagliati da inviare all'argomento. string NO

Archiviazione di Azure

La memoria è una soluzione di archiviazione cloud per vari tipi di dati. Archiviazione di code di Azure è una parte di Archiviazione che fornisce code di messaggistica che possono fungere da consumer di hook dei servizi.

Inserire un messaggio in una coda di archiviazione

Questa azione inserisce una rappresentazione di stringa JSON di un evento in una coda di archiviazione specificata. Per altre informazioni, vedere Che cos'è l'archiviazione delle code di Azure?.

  • ID consumatore: azureStorageQueue

  • ID azione: enqueue

  • Eventi supportati: tutti gli eventi

  • Impostazioni:

    ID di input Nome Descrizione Tipo di dati Obbligatorio
    AuthenticationMechanismInputId Modalità di autenticazione Modalità di autenticazione da usare. string NO
    ServiceConnectionInputId Connessioni di Azure Resource Manager ID di una connessione al servizio. string NO
    accountName Nome account di archiviazione Nome associato all'account di archiviazione. Questo nome è disponibile nel portale di Azure. string
    accountKey chiave dell'account di archiviazione Chiave associata all'account di archiviazione. string NO
    queueName Nome della coda Nome composto solo da lettere minuscole per la coda da utilizzare all'interno dello Storage. Se non esiste già, viene creata una coda con questo nome. string
    visiTimeout Timeout della visibilità dei messaggi Il valore del timeout di visibilità, espresso in secondi, per il messaggio inserito in coda, in relazione all'ora del server. Il valore deve essere maggiore o uguale a 0 e non può essere maggiore di sette giorni o 604.800 secondi. Il timeout della visibilità deve essere impostato su un valore inferiore alla durata del messaggio. number
    ttl Durata temporale del messaggio Intervallo di tempo di vita per il messaggio nella coda, espresso in secondi. Il valore massimo che è possibile usare è di sette giorni o 604.800 secondi. number
    resourceDetailsToSend Dettagli risorsa da inviare Numero di campi di risorse da inviare alla coda. Le possibilità sono tutti i campi, un numero minimo e nessuno di essi. string NO
    messagesToSend Messaggi da inviare Tipi di messaggi da inviare alla coda. string NO
    detailedMessagesToSend Messaggi dettagliati da inviare Tipi di messaggi dettagliati da inviare alla coda. string NO

Bambù

Bamboo è un server di integrazione continua di Atlassian.

Metti in coda una build

Questa azione accoda una compilazione Bamboo.

  • ID consumatore: bamboo

  • ID azione: queueBuild

  • Eventi supportati: git.push, build.complete, tfvc.checkin

  • Impostazioni:

    ID di input Nome Descrizione Tipo di dati Obbligatorio
    serverBaseUrl Bamboo URL di base URI che contiene il nome host del server Bamboo. uri
    basicAuthCredentials Credenziali di autenticazione di base Credenziali standard da usare per l'autenticazione al server Bamboo. Per evitare l'invio di credenziali in testo normale, usare il protocollo HTTPS per crittografare le credenziali tramite Transport Layer Security (TLS). È consigliabile usare entità servizio e identità gestite in Azure DevOps. string
    planName Piano Nome del piano da accodare. string

Datadog

Datadog è una piattaforma di monitoraggio e analisi per gli ambienti cloud.

Pubblicare un evento in Datadog

Questa azione crea un evento e le metriche corrispondenti in Datadog.

  • ID consumatore: datadog

  • ID azione: postEventInDatadog

  • Eventi supportati: tutti gli eventi

  • Impostazioni:

    ID di input Nome Descrizione Tipo di dati Obbligatorio
    apiKey Datadog chiave API Chiave di accesso per l'account Datadog. È possibile trovare la chiave API nel portale datadog. Vai al profilo, quindi seleziona Impostazioni dell'organizzazione>Chiavi API. string
    accountType Tipo di account Datadog Il tipo del tuo account Datadog. È possibile determinare il tipo di account dal nome host dell'URL usato dall'account Datadog:
    - app.datadoghq.com: US
    - app.datadoghq.eu: EU
    - us3.datadoghq.com: US3
    - us5.datadoghq.com: US5
    - ap1.datadoghq.com: AP1
    - app.dog-gov.com: GOV
    string

Grafana

Grafana è un dashboard e un editor grafico open source.

Aggiungere un'annotazione a un database Grafana

Questa azione crea un'annotazione in Grafana.

  • ID consumatore: grafana

  • ID azione: addAnnotation

  • Eventi supportati: ms.vss-release.deployment-completed-event

  • Impostazioni:

    ID di input Nome Descrizione Tipo di dati Obbligatorio
    url Grafana URL URL da usare per pubblicare un'annotazione in Grafana. uri
    apiToken Token API Token di accesso per la pubblicazione di annotazioni in un database Grafana. Per informazioni sulla creazione di un token, vedere Creare token e dashboard dell'account del servizio per un'organizzazione. string
    tags Tag Elenco delimitato da virgole di tag da usare per l'aggiunta di annotazioni. string
    annotationDeploymentDurationWindow Annotare la finestra di durata della distribuzione Opzione per la configurazione della finestra di durata di un'annotazione.
    - Se selezionata, l'annotazione si applica all'ora tra l'inizio e il completamento della distribuzione.
    - Se non è selezionata, l'annotazione si applica al completamento della distribuzione.
    boolean NO
    text Testo Descrizione personalizzata per un'annotazione. Se non specificato, questa impostazione descrive il rilascio e lo stato. Questa impostazione può includere collegamenti, ad esempio <a href="https://www.contoso.com" target="_blank">Contoso</a>. string NO
    dashboardId Pannello di controllo ID del dashboard a cui aggiungere l'annotazione. Quando non viene specificato un ID, l'annotazione viene aggiunta a livello globale. string NO

Jenkins

Jenkins è un server di integrazione continua che è possibile usare per compilare e testare progetti software in modo continuo.

Attivare una compilazione Git

Questa azione usa il plug-in Git jenkins per attivare una compilazione in un repository Git.

  • ID consumatore: jenkins

  • ID azione: triggerGitBuild

  • Eventi supportati: git.push, git.pullrequest.merged

  • Impostazioni:

    Inserisci ID Nome Descrizione Tipo di dati Obbligatorio
    serverBaseUrl URL di base di Jenkins URI che contiene il nome host del server Jenkins. uri
    basicAuthCredentials Credenziali di autenticazione di base Credenziali di autenticazione HTTP standard. Per evitare l'invio di credenziali in testo normale, usare il protocollo HTTPS per crittografare le credenziali tramite TLS. È consigliabile usare entità servizio e identità gestite in Azure DevOps. string
    useTfsPlugin Livello di integrazione Livello di integrazione selezionato, uno dei due valori seguenti:
    - API Jenkins predefinita
    - Integrazione estesa fornita dal plug-in azure DevOps Server se tale plug-in è installato nel server Jenkins
    string NO

Attivare una compilazione generica

Questa azione attiva una compilazione Jenkins generica che richiama l'URL di compilazione di Jenkins.

  • ID consumatore: jenkins

  • ID azione: triggerGenericBuild

  • Eventi supportati: git.push, git.pullrequest.merged, build.complete, tfvc.checkin, ms.vss-release.deployment-completed-event

  • Impostazioni:

    ID di input Nome Descrizione Tipo di dati Obbligatorio
    serverBaseUrl URL di base di Jenkins URI che contiene il nome host del server Jenkins. uri
    basicAuthCredentials Credenziali di autenticazione di base Credenziali di autenticazione HTTP standard. Per evitare l'invio di credenziali in testo normale, usare il protocollo HTTPS per crittografare le credenziali tramite TLS. È consigliabile usare entità servizio e identità gestite in Azure DevOps. string
    buildName Costruire Nome della compilazione da attivare. string
    useTfsPlugin Livello di integrazione Livello di integrazione selezionato, uno dei due valori seguenti:
    - API Jenkins predefinita
    - Integrazione estesa fornita dal plug-in azure DevOps Server se tale plug-in è installato nel server Jenkins
    string NO
    buildAuthToken Token di compilazione Token di autenticazione per una build. Solo gli utenti che conoscono il token possono attivare in remoto le compilazioni. string NO
    buildParameterized Accetta parametri Opzione che specifica se la compilazione accetta parametri. boolean NO
    buildParams Parametri di compilazione Creare parametri sotto forma di coppie nome-valore. In ogni coppia il nome e il valore sono separati da due punti, ad esempio <parameter>:<value>. Ogni coppia di nome e valore appare su una riga separata. string NO

Slack

Slack è una piattaforma ricercabile per la comunicazione tra team.

Pubblicare un messaggio in un canale

Questa azione pubblica un messaggio relativo a un evento a un canale Slack. Per altre informazioni, vedere Creare un hook del servizio per Azure DevOps con Slack.

  • ID Cliente: slack

  • ID azione: postMessageToChannel

  • Eventi supportati: tutti gli eventi

  • Impostazioni:

    ID di Input Nome Descrizione Tipo di dati Obbligatorio
    url Slack webhook URL URL del webhook fornito da Slack a cui inviare richieste HTTP POST. uri

Trello

Trello è uno strumento di gestione dei progetti che usa bacheche, elenchi e schede per aiutare i team a tenere traccia dei flussi di lavoro.

Creazione di una scheda

Questa azione crea una scheda in un elenco esistente in Trello. Una scheda può rappresentare un'attività, un problema, un evento o altri elementi correlati al progetto. Per ulteriori informazioni, consultare Creare un hook di servizio per Azure DevOps Services e TFS con Trello.

  • ID cliente: trello

  • ID azione: createCard

  • Eventi supportati: tutti gli eventi

  • Impostazioni:

    ID di Immissione Nome Descrizione Tipo di dati Obbligatorio
    userToken Token utente Token utente che fornisce l'accesso alle risorse Trello. Per ottenere un token, passare alla pagina di autorizzazione trello. string
    boardId Consiglio Nome della scheda in cui viene creata la scheda Trello. string
    listId Lista Nome dell'elenco in cui viene creata la scheda Trello. string
    labels Etichette Elenco delimitato da virgole di colori dell'etichetta da applicare alla scheda creata. I nomi dei colori delle etichette validi sono red, orange, yellow, greenblue, e purple. string NO
    addToTop Crea all'inizio dell'elenco Opzione che indica se creare la scheda all'inizio o alla fine dell'elenco Trello. Quando questo campo è true, la scheda viene creata all'inizio. boolean NO
    cardName Nome scheda Nome della nuova scheda. Per impostazione predefinita, la descrizione del testo dell'evento viene usata come nome. È possibile usare i segnaposto per inserire contenuto dall'evento nel nome. Per altre informazioni, vedere Creare un gancio di servizio per Azure DevOps Services e TFS con Trello. string NO
    cardDescription Descrizione della scheda Descrizione della nuova scheda. Per impostazione predefinita, la descrizione dettagliata in formato Markdown dell'evento funge da descrizione. È possibile usare i segnaposto per inserire contenuto dall'evento nella descrizione. Per ulteriori informazioni, consulta Creare un webhook per Azure DevOps Services e TFS con Trello. string NO

Creazione di un elenco

Questa azione crea un elenco in una scheda esistente in Trello. Un elenco viene usato per organizzare le schede in una lavagna e in genere rappresenta uno stato. Per altre informazioni, vedere Creare un hook di servizio per Azure DevOps Services e TFS con Trello.

  • ID Cliente: trello

  • ID azione: createList

  • Eventi supportati: tutti gli eventi

  • Impostazioni:

    Input ID Nome Descrizione Tipo di dati Obbligatorio
    userToken Token utente Token utente che fornisce l'accesso alle risorse Trello. Per ottenere un token, passare alla pagina di autorizzazione trello. string
    boardId Consiglio Nome della scheda in cui viene creato l'elenco Trello. string
    addToBottom Crea nella parte inferiore della scheda Opzione che indica se creare la scheda all'inizio o alla fine della scheda. Quando questo campo è true, la scheda viene creata alla fine. boolean NO
    listName Nome elenco Nome del nuovo elenco. Per impostazione predefinita, la descrizione del testo dell'evento viene usata come nome. È possibile usare i segnaposto per inserire contenuto dall'evento nel nome. Per maggiori informazioni, vedere Creare un hook di servizio per Azure DevOps Services e TFS con Trello. string NO

Webhook

I webhook consentono di inviare una rappresentazione JSON di un evento Azure DevOps a qualsiasi servizio con un endpoint pubblico.

Pubblicare tramite HTTP

Questa azione invia una rappresentazione dell'oggetto JSON di un evento a un URL specificato. Gli endpoint HTTPS sono consigliati a causa del potenziale per i dati privati nel payload dell'evento. Per altre informazioni, vedere Webhook.

  • ID consumatore: webHooks

  • ID azione: httpRequest

  • Eventi supportati: tutti gli eventi

  • Impostazioni:

    ID di input Nome Descrizione Tipo di dati Obbligatorio
    url URL URL a cui inviare un HTTP POST. uri
    acceptUntrustedCerts Accettare certificati SSL non attendibili Opzione per non richiedere un certificato SSL (Secure Sockets Layer) attendibile per un endpoint. Usare questa opzione solo durante lo sviluppo e il test. boolean NO
    basicAuthCredentials Credenziali di autenticazione di base Credenziali di autenticazione HTTP standard. Per evitare l'invio di credenziali in testo normale, usare il protocollo HTTPS per crittografare le credenziali tramite TLS. È consigliabile usare entità servizio e identità gestite in Azure DevOps. string
    httpHeaders Intestazioni HTTP Chiavi e valori di intestazione HTTP sotto forma di coppie chiave-valore. In ogni coppia la chiave e il valore sono separati da due punti, ad esempio <key>:<value>. Ogni coppia chiave-valore viene visualizzata sulla propria riga. Questi valori sono visualizzabili da chiunque abbia accesso alla sottoscrizione hook del servizio. string NO
    resourceDetailsToSend Dettagli risorsa da inviare Numero di campi di risorse da inviare in coda. Le possibilità sono tutte le opzioni, un numero minimo e nessuna. string NO
    messagesToSend Messaggi da inviare Tipi di messaggi da inviare alla coda. string NO
    detailedMessagesToSend Messaggi dettagliati da inviare Tipi di messaggi dettagliati da inviare alla coda. string NO

Zendesk

Zendesk è una suite SaaS (Software as a Service) che offre ticket help desk, rilevamento dei problemi e supporto clienti.

Creare un commento privato in un ticket

Questa azione crea un commento privato in un ticket Zendesk.

  • ID consumatore: zendesk

  • ID azione: createPrivateComment

  • Eventi supportati: workitem.commented

  • Impostazioni:

    ID di input Nome Descrizione Tipo di dati Obbligatorio
    accountName Nome dell'account Nome dell'account Zendesk. È possibile trovare il nome dell'account nell'URL dell'account Zendesk, che ha il formato https://<account-name>.zendesk.com. string
    username Nome utente Nome utente dell'utente Zendesk che aggiorna i ticket. string
    apiToken Token API Token API Zendesk. Per trovare il token, passare all'app Zendesk e quindi selezionareAPICanali>di amministrazione>. string