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. Configure e gerencie assinaturas para receber notificações no canal sempre que o código for enviado ou verificado e sempre que uma solicitação pull (PR) for criada, atualizada ou mesclada. Esse aplicativo dá suporte a eventos do Git e do TFVC (Controle de Versão do Team Foundation).
Pré-requisitos
- Para criar assinaturas em um canal do Slack para eventos relacionados ao repositório, seja membro do grupo Administradores do Projeto ou seja um administrador de equipe. Para ser adicionado, consulte Alterar permissões no nível do projeto ou Adicionar um administrador de equipe.
- Para receber notificações, o acesso a aplicativos de terceiros por meio da configuração OAuth deve ser habilitado para a organização. Para obter mais informações, consulte Alterar as políticas de acesso ao aplicativo para sua organização.
Nota
- Você só pode vincular o aplicativo Azure Repos para Slack a um projeto hospedado no Azure DevOps Services no momento.
- No momento, não há suporte para notificações dentro de mensagens diretas.
Adicionar o aplicativo Azure Repos ao workspace do Slack
Vá para o aplicativo Azure Repos Slack e selecione Adicionar ao Slack.
Depois de adicionado, você receberá algo semelhante à seguinte mensagem de boas-vindas.
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
Conecte-se e autentique-se no Azure Repos usando
/azrepos signin
comando.Selecione Entrar.
Aceitar a integração do Azure Repos com o Slack.
Um código de verificação é exibido para uso em seu aplicativo de chat para concluir a autenticação.
Copie o código de autenticação.
Selecione Inserir código, cole o código e selecione Enviar.
A confirmação de login é exibida no chat.
Para começar a monitorar todos os repositórios Git em um projeto, use o seguinte comando 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 ser de qualquer página dentro do repositório que contenha 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
Nota
Você só pode assinar repositórios públicos.
O comando de assinatura inicia você com uma assinatura padrão. Para repositórios do Git, o canal é inscrito no evento Solicitação de pull criada (com branch de destino = principal) e, para repositórios do TFVC, o canal é assinado para o evento Código verificado.
Gerenciar assinaturas
Para exibir, adicionar ou remover assinaturas de um canal, use o seguinte comando subscriptions
:
/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.
Nota
Os administradores de equipe não podem remover ou modificar assinaturas criadas pelos administradores do Project.
Usar filtros para personalizar assinaturas
Quando um usuário assina um repositório usando o comando /azrepos subscribe
, uma assinatura padrão é criada. Geralmente, os usuários precisam 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.
- Execute o comando
/azrepos subscriptions
. - 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.
- Selecione o botão Adicionar assinatura.
- Selecione o repositório necessário e o evento desejado.
- Selecione os filtros apropriados.
Exemplo: receber notificações somente quando minha equipe estiver na lista de revisores de um PR
Exemplo: diga-me quando as tentativas de mesclagem falham devido a uma violação de política
Nota
- Normalmente, todos os filtros são suspensos. No entanto, se a lista suspensa tiver mais de 100 itens, os usuários deverão inserir os valores manualmente.
- Para o código TFVC verificado no evento, o filtro Em caminho deve ser do formato
$/myproject/path
.
Visualizar URLs de solicitação de pull
Quando um usuário colar a URL de uma PR, uma visualização será exibida como a imagem a seguir, o que ajuda a manter as conversas relacionadas a PR contextuais e precisas.
Depois que os usuários se conectarem, esse recurso funcionará para todos os canais em um workspace.
Remover assinaturas e repositórios de um canal
Use o comando a seguir para limpar seu canal removendo repositórios e assinaturas.
/azrepos unsubscribe all [project url]
Por exemplo, o comando a seguir exclui todas as assinaturas relacionadas a qualquer repositório no projeto e remove os repositórios do canal. Somente os administradores do projeto podem executar esse comando.
/azrepos unsubscribe all https://dev.azure.com/myorg/myproject
Referência de comando
A tabela a seguir lista todos os /azrepos commands
que você pode usar no 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 notificações |
/azrepos subscriptions | Adicionar ou remover 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. Convide o bot para seu canal privado usando /invite @azrepos
. Em seguida, você pode gerenciar suas notificações da mesma maneira que faria para um canal público.
Solucionar problemas
Se você estiver enfrentando os seguintes erros ao usar o aplicativo Azure Repos para Slack, siga os procedimentos nesta seção.
- Desculpe, algo deu errado. Tente novamente.
- Falha na configuração. Verifique se a organização '{nome da organização}' existe e se você tem permissões suficientes.
Desculpe, algo deu errado. Tente novamente.
O aplicativo Azure Repos usa o protocolo de autenticação OAuth e requer acesso a 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.
Falha na configuração. Verifique se a organização '{nome da organização}' existe e se você tem permissões suficientes.
Saia do Azure DevOps navegando até https://aka.ms/VsSignout
usando 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.
No mesmo navegador, inicie uma nova guia, navegue até https://slack.com
e entre no workspace (use o clienteWeb). Execute o comando /azrepos signout
seguido pelo comando /azrepos signin
.
Selecione o botão Sign in
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 email é o mesmo que foi escolhido na etapa anterior. Aceite e conclua o login.
Se essas etapas não resolverem o problema de autenticação, entre em contato conosco em da Comunidade de Desenvolvedores.