Explorando o Azure DevOps como uma alternativa de CI/CD para um aplicativo android — Parte 1
As exigências na velocidade de desenvolvimento e disponibilidade de um aplicativo estão cada vem maior, hoje existem fluxos de trabalho onde temos mapeado quando deve ser publicada uma versão Alpha ou Beta. A forma lógica é fazer todo esse processo na mão e separado, porém isso leva tempo e ainda temos possibilidades de erros.
É nesse momento que entra a área de DevOps, que vem com uma proposta de automatizar o processo de teste, validação e disponibilidade. Hoje no mercado existe várias ferramentas que fazem isso, no meu último artigo mostrei como criar um integração contínua usando o Jenkins (Link do artigo), e nesta série eu vou apresentar o passo a passo de como criar um CI usando o Azure DevOps, e também como conectar seu pipeline ao AppCenter.
Chega de conversa, e vamos lá! :)
Configurar o projeto
Criar o YAML
O YAML é o arquivo onde vamos inserir todas as etapas do nosso pipeline. Você deve criar um arquivo com a extensão .yml, na raiz do seu projeto.
Inserir a task de Gradle
- Ajuste o valor workingDirectory se o seu arquivo gradlew não estiver na raiz do repositório. O valor do diretório deve ser relativo à raiz do repositório, como AndroidApps/MyApp ou $(system.defaultWorkingDirectory)/AndroidApps/MyApp.
- Ajuste o valor de gradleWrapperFile se o seu arquivo gradlew não estiver na raiz do repositório. O valor do caminho do arquivo deve ser relativo à raiz do repositório, como AndroidApps/MyApp/gradlew ou $(system.defaultWorkingDirectory)/AndroidApps/MyApp/gradlew.
Publicar os artefatos
Para fazer a publicação dos artefatos, é necessário criar duas novas tasks, como mostra o arquivo abaixo.
A tabela abaixo explica melhor cada parâmetro da task Copy Files
A próxima tabela explica melhor cada parâmetro da task Publish Build Artifacts
Supimpa! Terminamos a nossa configuração de projeto!
Abaixo o arquivo YML completo.
Configurando o Azure DevOps
Após configurar o projeto, vá até o Azure.
Criar a pipeline
Entre no Azure e selecione o menu de Pipelines como mostra a imagem abaixo. Vai abrir 5 submenus, selecione o Builds, e clique em New — New build pipeline
Abrirá uma nova tela de seleção perguntando onde está seu código. Observe a imagem abaixo. Selecione uma das opções e selecione seu repositório .
Após isso o Azure vai apresentar um tela de configuração. Nela você tem 4 opções (como mostra a imagem abaixo). Como o projeto já está configurado, você deve selecionar a opção “Existing Azure Pipeline YAML file”, informa a branch e dizer qual é o path.
Após isso é só criar em run, e esperar. Quando termina o pipeline por padrão o Azure envia um e-mail para o usuário que iniciou a pipeline e apresenta a seguinte tela.
Se você observar bem aqui está listado todos os jobs feito no pipeline, e pode ainda ler todo log gerado. Essa tela também te dar acesso aos artefatos, observe o botão “Artifacts” no canto superior a direita, clicando nele você pode acessar os arquivos salvos.
Na parte 2 vamos explorar o App Center como uma estratégia de teste e distribuição do aplicativo.
Obrigado pela leitura! Espero que tenham gostado do artigo :) Se você quiser conversar é só chamar no Twitter. Caso queira ver um pouco de código, segue no Github.