Azure Repos com Slack

Azure DevOps Services

Se você usar o Slack, poderá usar o aplicativo Azure Repos do Slack para monitorar facilmente seus repositórios do Azure Repos. Você pode configurar e gerenciar assinaturas para receber notificações em seu canal sempre que o código for enviado/check-in e sempre que uma solicitação pull (PR) for criada, atualizada ou uma tentativa de mesclagem. Esse aplicativo dá suporte a eventos do Git e do Controle de Versão do Team Foundation (TFVC).

Imagem de notificações

Leia este artigo para saber como fazer:

  • Adicionar o aplicativo Azure Repos ao workspace do Slack
  • Conectar o aplicativo Azure Repos aos seus repositórios
  • Gerenciar assinaturas para eventos relacionados ao repositório em seu canal do Slack
  • Usando filtros efetivamente para personalizar assinaturas
  • Obter notificações em canais privados do Slack

Pré-requisitos

Observação

  • No momento, não há suporte para notificações dentro de mensagens diretas.
  • Você só pode vincular o aplicativo Azure Repos para Slack a um projeto hospedado no Azure DevOps Services no momento.

Adicionar o aplicativo Azure Repos ao workspace do Slack

  1. Navegue até o aplicativo Slack do Azure Repos para instalar o aplicativo Azure Repos no workspace do Slack.

  2. Depois de adicionado, você verá uma mensagem de boas-vindas do aplicativo, conforme mostrado na imagem a seguir.

    Mensagem de boas-vindas

  3. Use o identificador do /azrepos Slack para interagir com o aplicativo. Uma lista completa de comandos é fornecida na seção de referência ao comando deste artigo.

Conectar o aplicativo Azure Repos aos seus repositórios

  1. Depois que o aplicativo tiver sido instalado no workspace do Slack, conecte-se e autentique-se no Azure Repos usando o /azrepos signin comando.

    Imagem do prompt de entrada

  2. Para começar a monitorar todos os repositórios Git em um projeto, use o seguinte comando de barra dentro de um canal:

    /azrepos subscribe [project url]
    

    A URL do projeto pode estar em qualquer página do projeto (exceto URLs para repositórios).

    Por exemplo:

    /azrepos subscribe https://dev.azure.com/myorg/myproject/
    

    Você também pode monitorar um repositório específico usando o seguinte comando:

    /azrepos subscribe [repository url]
    

    A URL do repositório pode estar em qualquer página no repositório que tenha o nome do repositório.

    Por exemplo, para repositórios Git, use:

    /azrepos subscribe https://dev.azure.com/myorg/myproject/_git/myrepository
    

    Para repositórios TFVC, use:

    /azrepos subscribe https://dev.azure.com/myorg/myproject/_versionControl
    

    Observação

    Você só pode assinar repositórios públicos.

  3. O comando de assinatura é iniciado com uma assinatura padrão. Para repositórios Git, o canal é inscrito no evento criado pela solicitação pull (com branch de destino = mestre) e, para repositórios TFVC, o canal é inscrito no código verificado no evento.

    Mensagem de criação de assinaturas padrão

Gerenciar Assinaturas

Para exibir, adicionar e remover assinaturas de um canal, use o subscriptions comando:

/azrepos subscriptions    

Esse comando lista todas as assinaturas atuais do canal e permite que você adicione novas assinaturas ou remova as existentes. Ao adicionar assinaturas, você pode personalizar as notificações recebidas usando vários filtros, conforme descrito na seção a seguir.

[!OBSERVAÇÃO] Os administradores de equipe não podem remover ou modificar assinaturas criadas pelos administradores do Project.

Exibir assinaturas

Usando filtros efetivamente para personalizar assinaturas

Quando um usuário assina um repositório usando /azrepos subscribe o comando, uma assinatura padrão é criada. Muitas vezes, os usuários têm a necessidade de personalizar essas assinaturas. Por exemplo, os usuários podem querer ser notificados somente quando as PRs tiverem um revisor específico.

As etapas a seguir demonstram como personalizar assinaturas.

  1. Execute o comando /azrepos subscriptions.
  2. Na lista de assinaturas, se houver uma assinatura indesejada ou que deve ser modificada (exemplo: criando ruído no canal), selecione o botão Remover.
  3. Selecione o botão Adicionar assinatura.
  4. Selecione o repositório necessário e o evento desejado.
  5. Selecione os filtros apropriados para personalizar sua assinatura.

Exemplo: obter notificações somente quando minha equipe estiver na lista de revisor de uma PR

O revisor tem minha equipe

Exemplo: diga-me quando as tentativas de mesclagem falham devido a uma violação de política

Tentativa de mesclagem sem êxito – devido à violação de política

Observação

  • Normalmente, todos os filtros são suspensos. No entanto, se a lista suspensa tiver mais de 100 itens, os usuários serão solicitados a inserir os valores manualmente.
  • Para o código TFVC verificado no evento, o filtro Em caminho deve ser do formato $/myproject/path.

Visualizações de URLs de solicitação de pull

Quando um usuário cola a URL de uma PR, uma visualização é mostrada como a da imagem a seguir. Isso ajuda a manter as conversas relacionadas à PR contextuais e precisas.

Desenrolamento de URL

Para que esse recurso funcione, os usuários precisam estar conectados. Depois que eles estiverem conectados, esse recurso funcionará para todos os canais em um workspace.

Remover assinaturas e repositórios de um canal

  • Muitas vezes, os usuários desejam limpar seu canal removendo repositórios e assinaturas. Use o comando abaixo para obter o mesmo.

      /azrepos unsubscribe all [project url]
    

    Por exemplo:

      /azrepos unsubscribe all https://dev.azure.com/myorg/myproject
    

Esse comando excluirá todas as assinaturas relacionadas a qualquer repositório no projeto e removerá os repositórios do canal. Somente os administradores do projeto podem executar esse comando.

Referência do comando

A tabela a seguir lista tudo o que /azrepos commands você pode usar em seu canal do Slack.

Comando barra Funcionalidade
/azrepos subscribe [repository url/ project url] Assinar um repositório ou todos os repositórios em um projeto para receber notificações
/azrepos subscriptions Adicione ou remova as assinaturas para este canal
/azrepos signin Entre em sua organização do Azure Repos
/azrepos signout Sair da sua organização do Azure Repos
/azrepos feedback Relatar um problema ou sugerir um recurso
/azrepos unsubscribe all [project url] Remover todos os repositórios (pertencentes a um projeto) e suas assinaturas associadas de um canal

Notificações em canais privados

O aplicativo Azure Repos também pode ajudá-lo a monitorar os eventos do repositório em seus canais privados. Você precisará convidar o bot para seu canal privado usando /invite @azrepos. Depois disso, você pode configurar e gerenciar suas notificações da mesma maneira que faria para um canal público.

Solução de problemas

Se você estiver enfrentando os seguintes erros ao usar o aplicativo Azure Repos para Slack, siga os procedimentos nesta seção.

Algo deu errado. Tente novamente.

O aplicativo Azure Repos usa o protocolo de autenticação OAuth e requer o acesso de aplicativos de terceiros por meio do OAuth para que a organização seja habilitada. Para habilitar essa configuração, navegue até Políticas de Segurança >de Configurações>da Organização e defina o acesso de aplicativos de terceiros por meio do OAuth para a configuração da organização como Ativada.

Habilitar o acesso de aplicativos de terceiros por meio do OAuth para a configuração da organização

Falha na configuração. Verifique se a organização '{organization name}' existe e se você tem permissões suficientes.

Saia do Azure DevOps navegando para https://aka.ms/VsSignout usar seu navegador.

Abra uma janela do navegador em Anônimo ou anônimo e navegue até https://aex.dev.azure.com/me e entre. Na lista suspensa, no ícone de perfil à esquerda, selecione o diretório que contém a organização que contém o repositório ao qual você deseja assinar.

Selecione o diretório que contém a organização que contém o projeto

No mesmo navegador, inicie uma nova guia, navegue até https://slack.come entre no workspace (use o clienteWeb). Execute o /azrepos signout comando seguido pelo /azrepos signin comando.

Selecione o Sign in botão e você será redirecionado para uma página de consentimento como a do exemplo a seguir. Verifique se o diretório mostrado ao lado do e-mail é o mesmo que foi escolhido na etapa anterior. Aceite e conclua o processo de entrada.

Consentimento para as permissões de aplicativo solicitadas

Se essas etapas não resolverem o problema de autenticação, entre em contato conosco na Comunidade de Desenvolvedores.