Integração Contínua Travis CI - fga-eps-mds/A-Disciplina-MDS-EPS GitHub Wiki
Integração Contínua
“Integração Contínua é uma pratica de desenvolvimento de software onde os membros de um time integram seu trabalho frequentemente, geralmente cada pessoa integra pelo menos diariamente – podendo haver multiplas 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
Travis-CI
-
O primeiro passo é acessar o site do travis-ci e fazer login com o seu usuário do github. Imagem - Travis-CI
-
Feito isso você vai acessar a página do seu perfil, lá você irá visualizar uma lista de todos os seus projetos. Basta mudar a chave para a posiçao ON e clicar na engrenagem ao lado, isto te levará para a página de configurações. Imagem - Perfil
-
Na página de configurações nós temos as seguintes opções:
- Build only if .travis.yml is present: Este vem como off por padrão, pois ainda não criamos o arquivo .travis.yml
- Build pushes: Toda vez que for feito um push, ele vai gerar um novo build
- Build pull requests: Toda vez que for feito um pull request, ele vai gerar um novo build
- Limit concurrent jobs
Mude a primeira chave "Build only if .travis.yml is present", para criar o .travis.yml e dar um commit para o repositório. Imagem - Chave. Escolha a linguagem que deseja utilizar aqui. Aqui neste exemplo eu irei utilizar o Ruby, e o arquivo ficará assim:
1 language: ruby
2 rvm:
3 - 2.2.0
Também é possível validar o seu .travis.yml neste link.
- Feito isso, o arquivo deve ter sido criado/validado e devidamente "commitado" para o seu repositório.
- O resultado final deverá ser semelhante a este: Imagem - Resultado.
Este foi um exemplo bem simples de como utilizar a integração contínua com o travis-ci, o arquivo .travis.yml pode ser personalizado de acordo com as necessidades do seu projeto.