Integração aos ganchos de serviço

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

Você pode usar ganchos de serviço para executar tarefas em outros serviços quando eventos acontecem em seu projeto do Azure DevOps.

Por exemplo, você pode usar um gancho de serviço para criar automaticamente um cartão no Trello quando um item de trabalho é criado no Azure DevOps. Ou você pode enviar automaticamente uma notificação por push para os dispositivos móveis da sua equipe quando um build falha. Você também pode usar ganchos de serviço em aplicativos e serviços personalizados como uma maneira mais eficiente de impulsionar atividades quando eventos acontecem em seus projetos.

Como funcionam os ganchos de serviço?

Os editores de gancho de serviço definem um conjunto de eventos que você pode assinar. definem um conjunto de eventos nos quais você pode se inscrever. Assinaturas monitoram esses eventos e definem as ações a serem tomadas com base neles.

As assinaturas também se destinam aos consumidores, que são serviços externos que podem executar suas próprias ações quando ocorrem eventos.

Diagrama com uma seta intitulada Evento ligando uma caixa de editor a uma caixa de assinatura, e setas da caixa de assinatura às caixas de consumidor e ações.

Observação

Para usar os ganchos de serviço, é necessário permitir intervalos específicos de endereços IP para conexões de entrada nos pontos de extremidade do serviço. Um ponto de extremidade de serviço é um conjunto de propriedades fornecidas a um gancho de serviço. Para obter mais informações, consulte endereços IP e restrições de intervalo.

Serviços disponíveis

Os seguintes serviços estão disponíveis como alvos de ganchos de serviço. Para obter mais informações sobre outros aplicativos e serviços que se integram ao Azure DevOps, consulte o Visual Studio Marketplace.

Serviço Eventos suportados Ações com suporte Gerenciamento de assinaturas
Centro de Aplicativos do Visual Studio Item de trabalho atualizado Enviar uma notificação No App Center
AppVeyor Código enviado por push Iniciar uma compilação no AppVeyor No AppVeyor
Azuqua Tudo Postar um evento em um FLO (objeto de linguagem de fluxo) No Azuqua
Serviço de Aplicativo do Azure Código enviado por push Implantar um aplicativo Web No Serviço de Aplicativo
Barramento de Serviço do Azure Tudo Envie uma mensagem para o Hubs de Notificação do Azure, uma fila do Barramento de Serviço ou um tópico do Barramento de Serviço No Azure DevOps
Armazenamento do Azure Tudo Inserir uma mensagem em uma fila de armazenamento No Azure DevOps
Bambu Compilação concluída, código enviado Enfileirar uma compilação No Azure DevOps
Datadog Todos Postar um evento no Datadog No Azure DevOps
Grafana Conclusão da implantação do lançamento Adicionar uma anotação a um banco de dados grafana No Azure DevOps
Jenkins Compilação concluída, código enviado, tentativa de mesclagem do PR Iniciar uma compilação genérica ou do Git No Azure DevOps
Equipes da Microsoft Tudo Postar uma mensagem em um canal No Teams
MyGet Compilação concluída, código enviado Publicar um pacote NuGet no MyGet, iniciar uma compilação no MyGet No MyGet
Office 365 Tudo Postar uma mensagem em um grupo No Office 365
Slack Tudo Postar uma mensagem em um canal No Azure DevOps
Trello Tudo Criar um cartão ou lista No Azure DevOps
UserVoice Item de trabalho criado, item de trabalho atualizado Enviar um evento de item de trabalho vinculado No UserVoice.
Webhooks Tudo Postar uma solicitação por meio de HTTP No Azure DevOps
Aplicativos de mensagens no local de trabalho Tudo Enviar uma notificação Em aplicativos de mensagens no local de trabalho
Zapier Tudo Enviar uma notificação No Zapier
Zendesk Item de trabalho comentado Criar um comentário privado em um tíquete No Azure DevOps
Serviço Eventos suportados Ações com suporte Gerenciamento de assinaturas
Barramento de Serviço do Azure Tudo Envie uma mensagem para o Hubs de Notificação do Azure, uma fila do Barramento de Serviço ou um tópico do Barramento de Serviço No Azure DevOps
Armazenamento do Azure Tudo Inserir uma mensagem em uma fila de armazenamento No Azure DevOps
Bambu Compilação concluída, código enviado Enfileirar uma compilação No Azure DevOps
Datadog Tudo Postar um evento no Datadog No Azure DevOps
Grafana Conclusão da implantação do lançamento Adicionar uma anotação a um banco de dados grafana No Azure DevOps
Jenkins Compilação concluída, código enviado, tentativa de mesclagem do PR Iniciar uma compilação genérica ou do Git No Azure DevOps
Equipes da Microsoft Tudo Postar uma mensagem em um canal No Teams
Office 365 Tudo Postar uma mensagem em um grupo No Office 365
Slack Tudo Postar uma mensagem em um canal No Azure DevOps
Trello Tudo Criar um cartão ou lista No Azure DevOps
UserVoice Item de trabalho criado, item de trabalho atualizado Enviar um evento de item de trabalho vinculado No UserVoice.
Webhooks Tudo Postar uma solicitação por meio de HTTP No Azure DevOps
Zendesk Item de trabalho comentado Criar um comentário privado em um tíquete No Azure DevOps

Criar uma assinatura

Para integrar um desses serviços ao Azure DevOps, crie uma assinatura. Em muitos casos, você também precisa configurar o serviço de destino. Para obter informações detalhadas, consulte a documentação do serviço que você deseja integrar.

  1. Vá para seu projeto, selecione Configurações do Projeto e selecione Hooks de Serviço.

    Captura de tela que mostra um projeto do Azure DevOps. Ao lado, as configurações do Projeto e os ganchos de serviço são realçados.

  2. Selecione Criar assinatura.

    Captura de tela da página Service Hooks de um projeto do Azure DevOps. O botão Criar assinatura está realçado.

  3. Selecione o serviço que você deseja integrar.

    Captura de tela da caixa de diálogo Serviço. Vários serviços estão listados, Trello está selecionado e uma descrição do Trello está visível.

  4. Selecione o evento a ser acionado e os filtros aplicáveis.

    Captura de tela da caixa de diálogo Gatilho. O evento Código enviado está selecionado. Os filtros estão definidos para um repositório e um grupo.

  5. Selecione uma ação a ser executada no serviço de destino.

    Observação

    As ações disponíveis dependem do tipo de evento selecionado.

    Captura de tela da caixa de diálogo Ação. Criar um cartão está selecionado. Os campos estão disponíveis para especificar um token, uma placa e outras configurações.

  6. Para confirmar se as configurações estão corretas, teste a assinatura e conclua o assistente.

    Captura de tela da janela Notificação de Teste. Na guia Resumo, uma mensagem sobre um push mostra um status de Bem-sucedido.

    Captura de tela da janela Notificação de Teste. A guia Solicitação mostra uma solicitação POST para Trello com informações sobre uma confirmação que foi enviada por push.

Perguntas Frequentes

P: Quais permissões eu preciso para configurar uma assinatura?

R: Você precisa das permissões de Editar assinaturas e Exibir assinaturas. Por padrão, somente os administradores de projeto têm essas permissões. Para concedê-los diretamente a outros usuários, você pode usar uma ferramenta de linha de comando ou a API REST de Segurança .

Para conceder a permissão Exibir a um grupo, consulte Definir permissão de exibição para um grupo em hooks de serviço.

Q: Quais são as implicações de segurança da concessão das permissões de Editar assinaturas e Visualizar assinaturas?

R: Um usuário que tem as permissões Editar assinaturas e Exibir assinaturas pode:

  • Confira todas as assinaturas no projeto.
  • Consulte o histórico de notificações de todas as assinaturas no projeto.
  • Crie qualquer tipo de assinatura de gancho de serviço no projeto.

Se o usuário configurar uma assinatura para um recurso que, de outra forma, não tiver permissão para acessar, a assinatura não será disparada.

Por exemplo, suponha que você crie uma assinatura para enviar uma notificação quando um item de trabalho em um caminho de área específico for atualizado. Se você não tiver acesso aos itens de trabalho nesse caminho da área, as notificações não serão enviadas. No entanto, se outros usuários tiverem acesso aos itens de trabalho, você poderá ver o histórico de notificação de assinaturas que os alertam sobre atualizações.

P: Posso criar assinaturas de gancho de serviço para um projeto programaticamente?

A: Sim. Para mais informações, consulte Criar uma assinatura de ganchos de serviço programaticamente.

P: Posso remover o acesso de um aplicativo à minha organização depois de autorizá-lo?

A: Sim. Você pode revogar autorizações do seu perfil.

  1. Acesse https://visualstudio.microsoft.com. Selecione sua foto de perfil e selecione o perfil do Visual Studio.

    Certifique-se de começar a partir do site Visual Studio, https://visualstudio.microsoft.com, ao gerenciar as autorizações. Nesse site, você pode acessar a implementação correta do recurso de gerenciamento de autorizações. Não comece pela sua organização (https://dev.azure.com/{organization-name}).

  2. Selecione Gerenciar autorizações.

    Captura de tela de uma página de perfil do Visual Studio com informações de contato para um usuário. Na seção Autorizações, Gerenciar aplicativos é realçado.

  3. Revogue todas as autorizações que você não deseja mais permitir.

    Captura de tela da caixa de diálogo Autorizações. Uma lista de permissões é visível e um link revoke é realçado.

P: Por que não posso mais configurar ganchos de serviço para o HipChat?

R: O Atlassian não dá mais suporte ao HipChat. Para obter mais informações, consulte perguntas frequentes do Atlassian.