| Resumo | O Discourse Code Review permite revisar commits do GitHub no Discourse. | |
| Link do Repositório | https://github.com/discourse/discourse-code-review | |
| Guia de Instalação | Como instalar plugins no Discourse |
Funcionalidades
O que é?
O plugin Discourse Code Review oferece integração bidirecional com repositórios de código do GitHub. Ele permite que sua equipe revise commits em um repositório aproveitando funcionalidades e plugins do Discourse, como atribuição, sussurros, notificações, fluxos de trabalho personalizados e muito mais. Cada commit em um repositório se torna um tópico. As respostas ao tópico são espelhadas no GitHub. A integração é bidirecional, o que significa que você pode comentar no Discourse e ver no GitHub, ou comentar no GitHub e ver no Discourse.
Ele oferece um fluxo de trabalho muito poderoso para equipes que precisam revisar todos os commits em qualquer número de repositórios.
Ele permite garantir que vários membros da equipe estejam cientes de todas as alterações aplicadas aos repositórios. Você pode marcar commits para acompanhamento, atribuir trabalho de revisão e muito mais.
Nota: Ao visualizar um tópico que pode ser aprovado, você pode usar o botão y no seu teclado para aprovar commits mais rapidamente.
Posso vê-lo em ação?
O Discourse mantém https://review.discourse.org/; este site é público e qualquer pessoa pode se inscrever usando credenciais do GitHub. O site exibe apenas um subconjunto de funcionalidades para membros que não são da equipe. Um exemplo mais completo pode ser:
No GitHub, o mesmo tópico aparece assim:
Configuração
O plugin depende de webhooks do GitHub para descobrir repositórios e alterações nos repositórios. Para uma configuração mínima, você precisará definir a seguinte configuração para uma string secreta.
code review github webhook secret
Uma vez definido no seu repositório do GitHub, configure um webhook com:
URL do Payload: https://SEU_DISCOURSE/code-review/webhook
Tipo de Conteúdo: application/json
Segredo: o valor de code review github webhook secret
Tipos de Evento:
- Comentários em commits
- Comentários em issues
- Pull requests
- Revisões de pull request
- Comentários em revisões de pull request
- Pushes
O plugin fornece as seguintes configurações adicionais do site:
code review api username: O GitHub é muito restritivo com o número de solicitações de API anônimas que permite; esta configuração permite que você use as chaves da conta de um usuário do Discourse para solicitações /comments e /commit. Isso reduz significativamente as chances de atingir limites de taxa.
code review catch up commits: número de commits para “alcançar” e criar tópicos ao encontrar um novo repositório.
code review default parent category: escolha uma categoria pai padrão para categorias criadas pelo plugin
code review pending tag: Tag a ser aplicada a todos os commits não revisados, pending por padrão
code review approved tag: Tag a ser aplicada a commits aprovados, approved por padrão
code_review_followup_tag: Tag a ser aplicada a commits de acompanhamento, follow-up por padrão
code review allow self approval: Membros da equipe podem aprovar seus próprios commits?
code review default mute new categories: Novas categorias criadas pelo code review são silenciadas para usuários por padrão
code review skip duration minutes: Clicar no botão pular em um commit impedirá que esse commit apareça novamente pelo número de minutos definido por esta configuração.
LOG DE ALTERAÇÕES
A FAZER
Extras
Como o Discourse Usa Este Plugin
TL;DR - Este plugin foi projetado para complementar o uso da equipe do Discourse do GitHub para revisão de código.
Mais Informações
De @sam:
Ainda usamos PRs usando a interface do GitHub e adoramos fazer PRs para muitas alterações. Nada mudou aqui. O GitHub é fantástico, amamos o GitHub. Eles têm um excelente fluxo de trabalho para alterações que ainda não foram incorporadas. No entanto…
O fluxo de trabalho do GitHub para alterações que foram commitadas diretamente no repositório é terrível.
A revisão preenche uma lacuna que simplesmente não pode ser preenchida com o GitHub hoje; gostaríamos que pelo menos um membro da equipe revisasse todas as alterações feitas em nossos vários repositórios git propriedade do Discourse. Se formos usar a interface fornecida pelo GitHub, ninguém será jamais autorizado a fazer algo além de pull requests. Isso nos atrasaria enormemente.
Precisamos da capacidade de comunicar privadamente sem que o mundo inteiro saiba em relação a certas alterações. Por exemplo: Precisamos implantar essa correção incrível no
<insira o nome da gigante empresa>o mais rápido possível, @sam, você pode cuidar disso?Precisamos da capacidade de aprovar alterações feitas ou solicitar acompanhamento; isso não é algo que a interface do GitHub oferece.
Precisamos da capacidade de atribuir commits específicos a um usuário. Digamos que @sam faça um commit contendo alguns erros. É bom que possamos atribuir diretamente a ele esse commit específico, marcá-lo para acompanhamento e depois acompanhar seu acompanhamento.
O Discourse é bastante fantástico em toda essa coisa de conversa, e os pequenos recursos fazem uma grande diferença; consigo ver quando as pessoas estão digitando. Nunca preciso atualizar as páginas para que as alterações apareçam. Citar é muito bom, uploads de imagens são bons, e assim por diante.
O Discourse é realmente bom em estado de leitura; você tem garantias muito fortes de que leu cada coisa uma vez. Com o GitHub, não tenho ideia de quais commits li e quais não li. Temos uma maneira incrivelmente eficiente de lidar com o fluxo constante de informações.
E a lista continua…
Então, a revisão atua como um complemento ao GitHub; usamos o GitHub no momento para lidar com alterações que ainda não foram incorporadas. E usamos a revisão para lidar adequadamente com alterações que já foram incorporadas.

