Entrega contínua no Google Play com Team Services

Mobile DevOps é muito mais do que apenas continuamente construir um aplicativo com cada commit, mas também envolve o planejamento, testes e iteração com a implantação contínua. Nas postagens anteriores sobre a integração contínua no Visual Studio Team Services (VSTS), vimos como construir e assinar um Android e um aplicativo iOS application com Xamarin e Xamarin.Forms. Hoje vamos falar sobre a entrega contínua no Google Play com Team Services.

Mas o que vem depois? Hoje, damos uma olhada no gerenciamento contínuo de entrega e lançamento para aplicativos Android para obter nossos aplicativos nas mãos de nossos testadores e na loja de aplicativos para distribuição.

Iniciando

Neste ponto do nosso ciclo DevOps, temos o nosso aplicativo Android sendo continuamente construído com cada commit de código, assinado com o nosso keystore e publicando nossos artefatos para lançamento. Se você ainda não estiver nesse ponto, certifique-se de ler o primeiro post sobre como configurar aplicativos Android apps no VSTS. Além disso, podemos querer examinar automaticamente o aumento do nome da versão e do código para o nosso aplicativo Android para que cada compilação gere um pacote exclusivo.

 

Depois que tudo está sendo construído com sucesso, podemos passar para a guia Releases. Podemos pensar nesta seção do VSTS como um balcão único para qualquer coisa que queremos fazer com os artefatos que foram gerados a partir da seção construir. Podemos criar definições de lançamento exclusivas com etapas do que gostaríamos de executar, como enviar para o HockeyApp ou para o Google Play.

Cada passo pode ocorrer automaticamente ou com uma liberação fechada que tem que ser aprovado antes que a etapa possa ser concluída. Construiremos uma definição de várias etapas para primeiro implantar automaticamente no HockeyApp para que desenvolvedores internos e testadores sejam instalados e, em seguida, uma implantação fechada para o Google Play com Team Services.

Criando uma definição de versão

Na seção Releases, encontraremos um fluxo de trabalho muito semelhante ao da configuração do build. Tudo o que precisamos fazer é clicar na seta verde + e, em seguida, selecionar Criar Definição de Versão.

Isso exibirá a caixa de diálogo criar nova definição de release. Selecione a definição vazia inferior para começar. Depois disso, a segunda tela na caixa de diálogo perguntará quais artefatos nós desejamos incluir na definição de release.

Selecione a definição de compilação que você gostaria de usar e certifique-se de verificar a implantação contínua para que uma nova versão seja criada com cada compilação bem-sucedida. Por fim, podemos escolher a fila do agente hospedado para fazer as implantações.

 

Clicar em Criar nos levará à nossa primeira definição de lançamento que possui uma lista de Ambientes, que contém uma lista de tarefas a serem executadas quando uma lista de condições de implantação específicas foi atendida. Para especificar quais artefatos irão disparar a nossa definição de construção, toque na guia Disparadores (Triggers) e defina a origem de artefato de gatilho para a implantação contínua:

 

Implantação contínua no HockeyApp

Em nosso nosso primeiro post, implantado no HockeyApp como parte do processo de construção. Isso pode funcionar para fins de desenvolvimento, mas integrá-lo em nosso ciclo de gerenciamento de versões nos dará maior controle sobre quando e como implementar.

As etapas de implantação como parte dos lançamentos são quase idênticas: primeiro, devemos garantir que a Extensão p VSTS do HockeyApp esteja instalada em nosso projeto. Então, podemos adicionar uma nova Tarefa ao nosso primeiro ambiente de release, que eu chamei HockeyApp.

 

Preencha a Conexão HockeyApp, o ID do aplicativo e especifique o APK na pasta suspensa que devemos implantar. Além disso, podemos especificar se os usuários devem ser notificados, notas de versão e se é uma instalação obrigatória. Essa implantação ocorrerá automaticamente assim que nossa definição de compilação for aprovada com êxito.

Implementando o Google Play com Team Services

Assim que estiver em mãos de nossos testadores internos, queremos liberá-lo para o próximo local lógico, a Google Play Store, para colocá-lo em produção. Isso requer que a Extensão VSTS para o Google Play seja instalada em seu projeto. Esta extensão tem várias funcionalidades, incluindo a liberação para alfa, beta ou de produção, aumentando a porcentagem de implantação de um aplicativo previamente implantado e até mesmo promovendo um aplicativo de uma faixa de lançamento para outra.

Hoje, só iremos analisar a liberação de nosso aplicativo para a faixa alfa do Google Play com Team Services para instalação. São necessárias algumas etapas como pré-requisitos para configurar uma Conta de Serviço do Google Play e gerar uma chave de API para tornar a conexão do Google Play como um ponto de extremidade de serviço. Certifique-se de seguir  estas instruções na página de instalaçao (em inglês).

 

Com a extensão e o serviço do Google Play configurados, podemos criar um novo ambiente que será acionado depois que nosso ambiente do HockeyApp estiver pronto. Selecione Adicionar ambiente e selecione Criar novo ambiente para abrir a caixa de diálogo Adicionar novo ambiente. Novamente, vamos selecionar a definição vazia, mas desta vez selecionando “próximo” nos permitirá configurar configurações adicionais de pré-implantação.

O que podemos configurar neste ponto são específicos usuários que precisam aprovar uma versão. Isso é bom porque talvez não desejemos que todas as versões sejam lançadas no Google Play com Team Services e podemos ser seletivos sobre quais compilações serão implementadas.

Deixar Deploy automatically checked significa que essa etapa tentará obter aprovação após o aplicativo ter sido implantado com êxito no HockeyApp. Isto é opcional, mas uma adição agradável, como também gostaríamos que ele fosse implementado no HockeyApp primeiro.

 

Podemos adicionar uma nova tarefa do Google Play – Release ao ambiente recém-criado.

 

Se você configurou o endpoint do Serviço, você pode especificá-lo nas configurações de tarefas; caso contrário, você também pode usar o arquivo de autenticação JSON fornecido pelo Google. Então só precisamos especificar o caminho do arquivo APK, track Alfa e, opcionalmente, podemos especificar um arquivo de notas de versão e metadados para carregar.

Salve a definição de release e, em seguida, podemos simular uma liberação selecionando o botão de liberação “+” e selecionando Criar nova versão. Isso abrirá uma caixa de diálogo para selecionar a compilação a ser implantada e iniciar uma implantação. Dentro de pouco tempo teremos o aplicativo implantado no HockeyApp:

 

Ao selecionar a versão, podemos ver que a implantação do Google Play com Team Services está aguardando nossa aprovação para lançamento.

 

Agora, podemos aprovar ou rejeitar esta versão para implementação para ativar o Google Play.

Saiba mais

Neste post, cobrimos o gerenciamento de lançamentos para aplicativos do Android para HockeyApp e Google Play com apenas algumas tarefas simples. Você pode aplicar esta mesma estratégia de gerenciamento de lançamento para aplicativos iOS usando a Extensão VSTS da App Store da Apple para ajudar a manter suas implantações beta e de produção do iOS atualizadas (consulte o blog do anúncio  para obter mais detalhes).

Implementando apenas algumas partes do ciclo DevOps pode economizar tempo e garantir uma liberação de alta qualidade com cada commit de código.

Quer saber mais? Veja To canal Xamarin Show  no canal 9:

Fonte: https://blog.xamarin.com/continuous-delivery-to-google-play-with-team-services/

Por James Montemagno, 31 de agosto de 2016

Tradução: salomaosilva, Azuris. Desenvolvedor Xamarin Azuris

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *