Jenkins: Uma solução de Integração Contínua para o Android

Victor Oliveira
Jun 11, 2019 · 4 min read

Neste artigo, vou apresentar um guia simples de como configurar a integração contínua para aplicações android usando o Jenkins.

Neste artigo não vou tratar das vantagens e desvantagens do Jenkins, aqui vou só expor minha experiência no uso desta ferramenta. Eu também não vou mostrar como instalar o Jenkins na sua máquina. Caso queira algum embasamento para isso, indico a leitura do artigo mencionando abaixo.

Configurar o Jenkins

Abra o Jenkins: Manage Jenkins > Configure System -> Global properties. Marque “ Environment variables” e adicione:

  • ANDROID_HOME : /var/lib/jenkins/android-sdk
  • JAVA_HOME : /usr/lib/jvm/java-8-openjdk-amd64

Clique em Save.

Para a configuração do se repositório, primeiro é necessário criar uma chave SSH, e o nome dela deve ser id_rsa .

Nesse artigo vou usar o Git como exemplo. Para configurar o Git no Jenkins você deve seguir esses passos: Credentials > System > Global credentials > Add Credentials

Criando um build job

  • Abra o Jenkins> New Item > Insira o nome do job > Selecione o Freestyle project > Aperte Ok.
  • Uma dica importante, é que o nome do projeto seja o mesmo do nome da branch , assim você deixa tudo parametrizado.
Tela do opções na criação de job
  • Vá até Source Code Management > Selecione git e configure os campos.
  • Repository URL, deve ser o formato de git@github.com: {username} / {repo} .git

Observe a imagem abaixo.

Em Build Triggers, selecione Poll SCM e adicione Schedule:

* * * * *

Cinco “*” com espaço significa que o Jenkins verificará a cada minuto se houver alguma mudança no repositório git que executará a compilação.

Vá até build, e adicione build step > Execute shell

chmod +x gradlew
./gradlew clean
./gradlew assembleDebug
./gradlew lint
./gradlew test
./gradlew connectedAndroidTest

Caso você não tenha o emulador configurado em seu servidor, pule essa etapa e retire a linha ./gradlew connectedAndroidTest do build.

Caso queira configurar vá até Build Environment > Selecione Run an Android Emulator during build > Insira o nome do seu emulador em AVD name.

Curiosidade interessante. O Jenkins tem a opção de você criar um novo emulador na própria plataforma.

Vá até Post-build Actions para configurar o pós-compilação.

Add post-build action > Publish Android Lint results > Insira no Lint files:

**/build/reports/lint-results.xml

Add post-build action > Archive the artifacts > Insira no File to archive

**/*.apk

Add post-build action > Publish JUnit test result report > Insira no Test report XMLs

**/build/outputs/androidTest-results/connected/*.xml

Para configurar a notificação de e-mail, basta seguir os passos abaixo.

Observe a tabela e insira os valores solicitados no Editable Email Notification. Use como base também a imagem abaixo.

Tudo feito. Clique em Aplicar e Salvar.

O resultado


Android Dev BR

Artigos em português sobre Android, curados pela comunidade Android Dev BR. Junte-se a nós: slack.androiddevbr.org.

Victor Oliveira

Written by

Android dev — https://victorlopesjg.github.io/

Android Dev BR

Artigos em português sobre Android, curados pela comunidade Android Dev BR. Junte-se a nós: slack.androiddevbr.org.

Welcome to a place where words matter. On Medium, smart voices and original ideas take center stage - with no ads in sight. Watch
Follow all the topics you care about, and we’ll deliver the best stories for you to your homepage and inbox. Explore
Get unlimited access to the best stories on Medium — and support writers while you’re at it. Just $5/month. Upgrade