Explorar diferentes abordagens de CI/CD

Concluído

Até agora, você viu duas abordagens para dar suporte à CI/CD para seu aplicativo nativo de nuvem. Você implantou manualmente o aplicativo no AKS e usou o GitHub Actions para criar e implantar o aplicativo. A Microsoft oferece suporte a uma terceira abordagem, o Azure Pipelines. Ambas as abordagens automatizadas são válidas. Você escolhe a que melhor se adapta às suas necessidades.

Quais são as diferenças entre o GitHub Actions e o Azure Pipelines?

Vamos começar observando como essas duas abordagens são iguais. O GitHub Actions e Azure Pipelines são ferramentas de CI/CD. Ambos dão suporte para:

  • Criar e implantar seu aplicativo.
  • Os arquivos YAML para definir as etapas para criar e implantar seu aplicativo.
  • Gatilhos para iniciar o processo de compilação e implantação do aplicativo.
  • Monitorar o processo de compilação e implantação.
  • Reverter uma implantação.

Os vários níveis de suporte para recursos são o ponto no qual os dois diferem. Vamos examinar essas diferenças.

GitHub Actions Azure Pipelines
Gratuito para repositórios públicos Gratuito para projetos de código aberto
Grátis por até 2.000 minutos por mês para repositórios privados Grátis por até 1.800 minutos por mês para repositórios privados
Limitado a 20 trabalhos simultâneos Limitado a 10 trabalhos simultâneos

O Azure Pipelines tem uma vantagem sobre o GitHub Actions, pois oferece suporte a muitos repositórios de diferentes origens. O Azure Pipelines dá suporte ao GitHub, GitHub Enterprise Server, Bitbucket Cloud, Git no Azure Repos e TFVC, Subversion e Git Externo. O GitHub Actions oferece suporte apenas ao GitHub.

Se você tiver fluxos de trabalho de CD/CD mais complexos, o Azure Pipelines poderá ser escalado para dar suporte às suas necessidades. O Azure Pipelines dá suporte a vários estágios, vários trabalhos e várias etapas. O GitHub Actions oferece suporte apenas a um único trabalho com várias etapas. Essa flexibilidade pode ser combinada com cenários de teste automatizados.

Observação

Quando você cria um novo projeto no DevOps, os minutos gratuitos do Azure Pipelines podem não estar disponíveis. Para solicitar uma concessão gratuita de paralelismo, preencha o formulário de solicitação de paralelismo. Você precisará fazer isso antes de concluir o próximo exercício.

Desativar seu GitHub Actions

Depois de analisar as diferenças, você decide alterar seu aplicativo para usar o Azure Pipelines.

  1. No repositório com fork, selecione a guia Actions.

  2. Selecione o fluxo de trabalho Build and deploy an app to AKS à esquerda.

  3. Selecione o menu mais opções no canto superior direito.

    A screenshot showing the Disabled workflow menu option for a GitHub Action workflow.

  4. Selecione Desativar fluxo de trabalho.

Você desabilitou o fluxo de trabalho do GitHub Actions. Agora você criará um pipeline do Azure para compilar e implantar seu aplicativo.