Automatizar o ciclo de vida das suas aplicações com compilação e integração contínuas
Enquanto programadores, escreve código e verifica-o no repositório de código, mas as consolidações verificadas no repositório podem nem sempre ser consistentes. Quando vários programadores trabalham no mesmo projeto, os problemas podem surgir com a integração. As equipas podem deparar-se com situações em que as coisas não funcionam, os erros acumulam-se e o desenvolvimento do projeto é adiado. Os programadores têm de esperar até que todo o código de software seja criado e testado para verificar se existem erros, o que torna o processo lento e menos iterativo.
Com a compilação e integração contínuas, os programadores podem simplificar as compilações e testar o respetivo código ao consolidar as alterações ao repositório de código fonte e ao colocar testes e verificações no ambiente de compilação. Desta forma, estão sempre a executar testes no código. Todas as alterações efetuadas ao código fonte são criadas continuamente sempre que for efetuada uma consolidação no repositório. A cada entrada, o servidor de integração contínua (CI) valida e executa qualquer teste que o programador criou. Se os testes não forem aprovados, o código é enviado novamente para mais alterações. Desta forma, os programadores não interrompem as compilações que são criadas. Também não têm de executar todos os testes localmente nos respetivos computadores, o que aumenta a produtividade dos programadores.
Principais benefícios
- Automatize as suas compilações, testes e implementações para pipelines.
- Detete erros e corrija problemas mais cedo para garantir taxas de lançamento mais rápidas.
- Consolide código com mais frequência e crie aplicações rapidamente.
- Obtenha flexibilidade para alterar o código rapidamente sem problemas.
- Obtenha um tempo de colocação no mercado mais rápido para que apenas o código de boa qualidade o faça até ao fim.
- Efetue pequenas alterações de código de forma mais eficiente porque pequenos blocos de código estão integrados de uma só vez.
- Aumente a transparência e a responsabilidade da equipa para que receba feedback contínuo dos seus clientes e da sua equipa.
Utilize os seguintes serviços para ativar um pipeline de integração contínua nas suas aplicações móveis.
Centro de Aplicações do Visual Studio
A Compilação do App Center ajuda-o a criar aplicações nativas e multiplataformas em que a sua equipa está a trabalhar através de uma infraestrutura de cloud segura. Pode ligar facilmente o seu repositório no Visual Studio App Center e começar a criar a sua aplicação na cloud em cada consolidação. Não tem de se preocupar em configurar servidores de compilação localmente, configurações complicadas e código que se baseia no computador de um colega, mas não no seu.
Com o poder adicional dos serviços do Visual Studio App Center, pode automatizar ainda mais o seu fluxo de trabalho. Pode lançar automaticamente compilações para testadores e lojas de aplicações públicas com a Distribuição do App Center. Também pode executar testes de IU automatizados em milhares de configurações reais de dispositivos e SO na cloud com o Teste do App Center.
Funcionalidades do Visual Studio App Center
- Configure a integração contínua em minutos e crie aplicações com mais frequência e rapidez.
- Integre com o GitHub, o BitBucket, o Azure DevOps e o GitLab.
- Crie compilações rápidas e seguras em máquinas geridas alojadas na cloud.
- Ative as compilações para iniciar o teste e verifique se a aplicação é compilação em dispositivos iOS e Android do mundo real.
- Obtenha suporte nativo e multiplataforma para iOS, Android, macOS, Windows, Xamarin e React Native.
- Personalize as suas compilações ao adicionar scripts pós-clone, pré-compilação e pós-compilação.
Referências do Visual Studio App Center
Azure Pipelines
O Azure Pipelines, um serviço no Azure DevOps, é um serviço de integração contínua e entrega contínua (CD) totalmente destacado que funciona com o seu fornecedor de Git preferido. Pode implementar na maioria dos principais serviços cloud, incluindo o Azure. Pode começar com o seu código no GitHub, GitHub Enterprise Server, GitLab, Bitbucket Cloud ou Repositórios do Azure. Em seguida, pode automatizar a compilação, teste e implementação do seu código no Microsoft Azure, Google Cloud Platform ou Amazon Web Services (AWS).
Funcionalidades do Azure Pipelines
- Experiência simplificada baseada em tarefas para configurar um servidor CI: Configure um servidor CI para aplicações móveis nativas (Android, iOS e Windows) e para várias plataformas (Xamarin, Cordova e React Native), além das tecnologias de servidor baseadas na Microsoft e não microsoft (Node.js, Java).
- Qualquer linguagem, plataforma e cloud: Crie, teste e implemente aplicações Node.js, Python, Java, PHP, Ruby, Go, C/C++, C#, Android e iOS. Execute em paralelo no Linux, macOS e Windows. Implemente em fornecedores de cloud como o Azure, o AWS e o Google Cloud Platform. Distribuir aplicações móveis através de canais beta e lojas de aplicações.
- Suporte de contentor nativo: Crie novos contentores com facilidade e envie-os para qualquer registo. Implemente contentores em anfitriões independentes ou no Kubernetes.
- Fluxos de trabalho avançados: Crie facilmente cadeias de compilação e compilações multifasadas. Obtenha suporte para YAML, integração de testes, portas de versão, relatórios e muito mais.
- Extensível: Utilize uma variedade de tarefas de compilação, teste e implementação criadas pela comunidade, que inclui centenas de extensões do Slack para o SonarCloud. Pode até implementar a partir de outros sistemas de CI, como o Jenkins. Os web hooks e as APIs REST podem ajudá-lo a integrar.
- Compilações gratuitas alojadas na cloud: Estas compilações estão disponíveis para repositórios públicos e privados.
- Suporte para implementação para outros fornecedores da cloud: Os fornecedores incluem o AWS e o Google Cloud Platform.
Referências dos Pipelines do Azure
- Introdução ao Azure Pipelines Guide (Guia de introdução aos Pipelines do Azure)
- Introdução ao Azure DevOps
- Inícios Rápidos
Para o ajudar a escolher o serviço certo para as compilações de aplicações, veja o artigo que compara a Compilação do App Center vs. Pipelines do Azure.