Implementar os seus modelos do Resource Manager como parte dos seus esforços de CI/CD com o GitHub Actions

Concluído

As ações do GitHub Actions ajudam a sua equipa a ser ágil e competitiva no mercado atual. Também ajudam a automatizar as tarefas do ciclo de vida de desenvolvimento de sistemas ou soluções.

Suponha que você e sua equipe estejam desenvolvendo uma solução que exija um número significativo de recursos em um ambiente do Azure. Precisa de se certificar de que a solução pode ser implementada rapidamente e automaticamente como parte de um pipeline de integração contínua e entrega contínua (CI/CD). Dessa forma, pode automatizar a criação e a remoção da infraestrutura do projeto. Ao incluir a gestão de recursos no seu pipeline CI/CD, está a adotar a infraestrutura como código (IaC) para automatizar as tarefas de TI.

Os pipelines de CI/CD adequados também permitem que você inclua uma etapa de teste em suas tarefas de implantação, usando ferramentas como o kit de ferramentas de teste de modelo do Azure Resource Manager (ARM) (arm-ttk ). Para obter mais informações sobre este toolkit, veja Validar as suas implementações com what-if e o Toolkit de testes.

É recomendável incluir testes no seu pipeline para que possa concentrar-se na criação. O arm-ttk executa uma série de testes para validar o seu modelo durante a implementação para evitar problemas.

Existem diversas ferramentas disponíveis para o ajudar a alcançar estes objetivos. No entanto, uma vez que já está a utilizar o GitHub para o repositório de código, decide analisar o GitHub Actions para ver se proporciona a automatização que procura.

Este módulo apresenta o GitHub Actions como uma forma de implementar os seus modelos do Resource Manager.

O que é o GitHub Actions?

O GitHub Actions são scripts em pacote para automatizar tarefas num fluxo de trabalho de desenvolvimento no GitHub.

O GitHub Actions permite-lhe criar fluxos de trabalho personalizados para o ciclo de vida de desenvolvimento de software diretamente no seu repositório do GitHub onde os seus modelos do Resource Manager (ARM) estão armazenados. Os ficheiros YAML definem um fluxo de trabalho.

Os fluxos de trabalho têm um ou mais trabalhos. Cada trabalho contém um conjunto de passos que executam tarefas individuais. Os passos podem executar comandos ou utilizar uma ação. Pode criar as suas próprias ações ou utilizar ações partilhadas pela comunidade do GitHub e personalizá-las conforme necessário.

Um fluxo de trabalho básico para implementar um modelo do Resource Manager pode ter pelo menos três passos:

  1. Verifique um ficheiro de modelo.
  2. Inicie sessão no Azure.
  3. Implemente o modelo.

A ação do início de sessão do Azure utiliza um principal de serviço para autenticar com o Azure. Para que o principal de um fluxo de trabalho CI/CD implemente recursos do Azure, este precisa do contribuidor incorporado adequado.