Closed 1Sayza closed 2 months ago
Para uma melhor integração entre as tecnologias, iremos utilizar dentro do nosso ambiente e de nosso projeto algumas webhooks para automatizar a geração de builds e análise de codigo.
Escolhi utilizar o Ngrok para a questão de gerenciamento da url e direcionamento de tráfego até meu servidor jenkins entre os serviços. Para a inicialização do ngrok no servidor que esta seu orquestrador, segue os passos:
Fazemos a primeira configuração e instalação da tecnologia na máquina:
Geramos um token de autenticação par ao ngrok conseguir realizar suas atividades dentro das tecnologias:
Finalmente definimos qual endereço de url iremos utilizar para mascarar e gerar um webhook de acesso para coletar as atualizações de estado produzidas pela API:
Com a configuração do ngrok feita e funcional, utilizamos a url gerada pela aplicação para realizar o cadastro nas demais aplicações:
Dentro do Jenkins precisamos configurar para que ele aceite o Github hook trigger e assim consiga monitorar quando acontecer uma alteração no repositório, deve ser configurado pelo caminho (Pagina do job) > Configuração e selecionar a caixa abaixo:
No Github precisamos adicionar a url que foi concedida pelo ngrok e adicionar o sufixo de /github-webhook/ para o funcionamento ideal:
esta configurado para nao ter autenticação e ser ativado apenas em push
Depois de realizar o push com a webhook configurada corretamente, a seguinte mensagem deve aparecer:
Dentro da pipeline ja conseguimos verificar o retorno da interação com o Github hook log:
No sonarqube vamos utilizar webhook para retornar o status da verificação do quality gates que define quando a pipeline vai realizar o build para produção ou não:
Pode-se perceber que a unica diferença se da no sufixo após a url do ngrok para fins de diferenciação do próprio ngrok e das aplicações.
Por fim, temos o retorno do Quality Gates com essa webhook configurada dentro do projeto do SonarQube:
Tarefa de tentar implementar Webhooks do jebnkins na integração com o Github.