Back-End

3 out, 2013

Série Continuous Integration: build automatizado com Jenkins e GitHub

Publicidade

Olá, pessoal! No último artigo vimos como conectar o Jenkins com o GitHub. Hoje veremos como automatizar o nosso build, ou seja, se alguma mudança ocorreu no repositório, um novo build é iniciado.

Considerando que você tem o cenário do post anterior conforme a imagem a seguir:

cijenkinscenario

Clique no projeto MyBookStore e vá em configureEm build trigger deixe assim:

buildtriggerjenkins

O que fizemos?

Simples: estamos dizendo que a cada mudança no Github vamos precisar rodar um novo build, porém, como estamos rodando localmente o Jenkins, não tem como o Github informar ao Jenkins que algo mudou, então faremos o Jenkins verificar a cada 1 minuto se algo mudou no Github. Essa é a forma que temos de fazer isso quando não temos o jenkins em um IP Público.

Feito isso, vá em manage jenkins >> configure system

E em GitHub Web Hook deixamos assim:

githubwebhook

Após inserir seus dados do Github e a URL do repositório, clique em test credential.

Agora vamos testar e ver se o build vai iniciar automaticamente. Mas antes veremos como estamos:

historybookstorebuild

No meu caso, tenho o histórico de build acima. É esperado que se algo for alterado no repositório uma nova build seja iniciada – claro que não será de imediato, mas a cada 1 minuto.

Vá no seu GitHub e acesse o projeto:

mybookstoregithubjenkins

Aperte a tecla T e você poderá realizar uma pesquisa no GitHub. Procure por store e escolhaStoreMatrix.java.

storematrixgithub

É a classe que vamos realizar a alteração e aguardar o Jenkins build. Ao selecionar a classe, clique no botão Edit e adicione o atributo address.

addressaddedstorematrix

Clique no botão commit changes.

Vamos aguardar por 1 minuto e ver se o Jenkins inicia o build. O resultado é como mostrado a seguir:

buildqueuejenkinsbookstore

Pronto! Temos agora nosso build automatizado conectado ao Jenkins. Simples, não?

Vou ficando por aqui e espero que tenham gostado do artigo!