Integração Contínua

editar

Integração Contínua é uma pratica de desenvolvimento de software onde os membros de um time integram seu trabalho frequentemente. De forma geral, cada pessoa integra pelo menos uma vez durante o dia – podendo haver múltiplas integrações por dia. Cada integração é verificada por um build automatizado (incluindo testes) para detectar erros de integração o mais rápido possível. Muitos times acham que essa abordagem leva a uma significante redução nos problemas de integração e permite que um time desenvolva software coeso mais rapidamente.” Martin Fowler

Integração contínua, uma das práticas mais importantes do desenvolvimento ágil. Através dela, é possível agilizar tarefas demoradas como a compilação de um projeto e a execução dos seus testes automatizados.

Jenkins

editar
  • O que é Jenkins?

Jenkins é um servidor de Integração Contínua open-source feito em Java, pode ser rodado de forma standalone ou como uma aplicação web dentro de um servidor web.

  • Vantagens:
    • Builds periódicos;
    • Testes automatizados;
    • Possibilita análise de código;
    • Identifica erros mais cedo;
    • Fácil de operar e configurar;
    • Comunidade ativa;
    • O Jenkins integra outras ferramentas através de plugins existentes na própria aplicação.

Configurando Jenkins + Github

editar

1) Instalando plugins Git e Github no Jenkins

  • Na página inicial do Jenkins clique em Manage Jenkins -> Manage Plugins;
 
  • Na aba Avaiable, habilite o Git Plugin e GitHub, depois clique em Download now and install after restart ;
 
 

2) Criando um Job no Jenkins

  • Vá para a tela inicial do Jenkins e clique em "New Item".
 
  • Na próxima tela, crie um nome para o Job, escolha a opção 'Freestyle project'.
  • Depois clique em ¨OK¨.
 

3) Configurando Jenkins para usar seu repositório.

  • Clique no Job criado.
 
  • Clique Configure na parte esquerda da tela.
 
  • Na sessão General clique em GitHub Project.
  • Em Project url coloque a url do seu projeto no GitHub.
 
  • Na sessão Source Code Management Selecione Git
  • Em Repository URL coloque a url do seu projeto no GitHub.
 
  • No final da página clique em Save.

4) Configurando o Jenkins para receber a notificação push do GitHub. Agora você precisa para permitir que Jenkins se comunique com GitHub.

  • Clique em Menager Jenkins -> Configure System.
 
  • Na sessão GitHub escolha a opção Manage hooks.
  • Certifique-se de que você forneceu pelo menos um usuário e senha para se conectar ao GitHub.
 

5) Habilitando Job para ser acionado pelas notificações push.

  • Clique no Job criado.
 
  • Clique Configure na parte esquerda da tela.
 
  • Selecione o checkbox Build when a change is pushed to GitHub e salve a configuração.
 

6) Configurando o Github.

  • No seu projeto no GitHub:
    • Clique em Settings--> Webhooks&Services--> Service--> Add Services--> Selecione "Jenkins (GitHub plugin)" --> Add service.
 
 

7) Configure a ferramenta de build no Jenkins.

 

8) Pronto! Agora o projeto está configurado e cada alteração no repositório irá disparar o Job no Jenkins.