Como configurar Gerrit e GitLab para trabalharem juntos

Publicado por Ricardo Rodrigues Lucca em 30/03/2017

[ Hits: 3.045 ]

Blog: http://aventurasdeumdevop.blogspot.com.br/

 


Como configurar Gerrit e GitLab para trabalharem juntos



Hoje vou falar um pouco sob como configurar o GitLab e o Gerrit para ambos trabalharem juntos.

Primeiro, o que é Gerrit e o que é o GitLab? Gerrit é uma ferramenta open source para revisão de código e ele cuida do seu repositório git. Ele possui alguns plugins que permitem adicionar outras funcionalidades como um visualizador do repositório (por padrão é o GitWeb, mas é possível alterar para o Gitiles). O GitLab por sua vez permite gerenciar os repositórios git e realizar algum grau limitado de revisão. Ambas as ferramentas cuidam de seus repositórios gits e os protegem de interação externa.

Então como configurar o Gerrit e GitLab para trabalharem juntos? A resposta curta é eles não trabalham.

Vamos ver uma forma de interação possível. A que parece mais interessante é a de colocar um plugin chamado Replication no Gerrit e direcionar os repositórios que estão no mesmo para serem replicados no GitLab. Para fazer isso é necessário um usuário no GitLab com chave cadastrada no Gerrit. Além disso, o repositório sendo replicado pelo Gerrit precisa existir no GitLab para a replicação ser bem sucedida. Dessa forma de configuração, o GitLab fica como um backup do Gerrit e serve unicamente para visualizar os commits em um jeito mais bonito. Todas as interações ainda precisam ocorrer no Gerrit.

Continuando a configuração, é possível criar um webhook sempre que um merge-request (MR) é atualizado ou (re)aberto. Com isso é possível fazer com que um script externo clone esse merge-request e envie-o para Gerrit por meio de umas de suas anotações (refs/for) no push. Quando isso é feito alterar o merge-request, faz com que uma modificação seja criada no Gerrit. Quando essa é fechada e mergeada por uma revisão no Gerrit, o mesmo envia pelo plugin de replicação para o GitLab e o Issues/MR criado no GitLab é considerado encerrado.

Por fim, para o MR poder ser encerrado no GitLab é possível fazer com que ele replique as informações para o Gerrit. Sendo assim, meu primeiro pensamento foi que as maquinas ficariam em 100% de cpu, mas eu não vi isso acontecer. O que eu vi é que algumas vezes o Gerrit não parece ser tão bom quanto o GitLab para considerar a revisão como fechada. Mesmo quando esta ativado, a opção de ser obrigatório o Change-Id.

Isso é tudo pessoal!

Outras dicas deste autor

Tirar foto de terminal

XMMS - Colocando ordem no random

stty: alternativa para echo e noecho

Pérolas do desconhecido, comandos não tão conhecidos que podem ser úteis

Xterm colorido

Leitura recomendada

Lexmark X1185 no Ubuntu 10.10

Ativando a rede no Fedora Core

Montar USB automaticamente no Thunar

Linux Mint: GRUB sumiu após atualização?

Carregando o mapa do teclado no shell

  

Comentários

Nenhum comentário foi encontrado.



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts