Engenharia Estrutural Civil &
Implementação Automatização da Implantação de Recursos Azure com as Ações Github
Table of Contents
A implantação automatizada de recursos na nuvem tornou-se uma parte vital das operações de TI modernas. Usando ferramentas como o GitHub Actions para implantar recursos do Azure simplifica fluxos de trabalho, reduz erros manuais e acelera a entrega de projetos. Este artigo explora como implementar a implantação automatizada de recursos do Azure usando o GitHub Actions.
Compreender os princípios básicos
O GitHub Actions é uma plataforma de integração contínua e implantação contínua (CI/CD) que permite aos desenvolvedores automatizar fluxos de trabalho diretamente em seus repositórios do GitHub. O Azure, a plataforma de nuvem da Microsoft, oferece uma variedade de recursos, como Máquinas Virtuais, Bancos de Dados e Serviços de Aplicativos que podem ser fornecidos automaticamente através de scripts e APIs.
Pré-requisitos
- Conta Azure com permissões necessárias
- Repositório GitHub para o seu projeto
- Azure CLI instalado localmente para configuração inicial
- Diretor de Serviço com papel de Contribuinte atribuído em Azure
Configurar o Diretor de Serviço Azure
Primeiro, crie um Diretor de Serviço para permitir que as Ações GitHub se autenticem com o Azure. Use o CLI Azure:
Note abaixo o ]appId, ]senha, e separante. Estes serão adicionados como segredos no GitHub.
Configurar os Segredos do GitHub
Navegue para o seu repositório GitHub e depois vá para Configurações > Secrets > Actions. Adicione os seguintes segredos:
- AZURE CLIENT ID: sua aplicação
- AZURE SECRET: sua senha
- AZURE TENANT ID: o seu inquilino
- AZURE SUBSCRIPTION ID: o seu ID de subscrição
Criando o fluxo de trabalho das ações do GitHub
No seu repositório, crie um novo arquivo de fluxo de trabalho sob . Este arquivo definirá os passos para implantar recursos Azure automaticamente.
name: Deploy Azure Resources
on:
push:
branches:
- main
jobs:
build-and-deploy:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v3
- name: Login to Azure
uses: azure/login@v1
with:
client-id: ${{ secrets.AZURE_CLIENT_ID }}
client-secret: ${{ secrets.AZURE_SECRET }}
tenant-id: ${{ secrets.AZURE_TENANT_ID }}
- name: Deploy Resources
run: |
az account set --subscription ${{ secrets.AZURE_SUBSCRIPTION_ID }}
az deployment group create \
--resource-group myResourceGroup \
--template-file azuredeploy.json \
--parameters @azuredeploy.parameters.json
Este fluxo de trabalho faz login no Azure e implementa recursos com base em seus modelos ARM. Você pode personalizar os comandos de implantação para atender às suas necessidades específicas de provisionamento de recursos.
Benefícios da implantação automatizada
- Implementações consistentes e repetiveis
- Aprovisionamento mais rápido dos recursos
- Erros manuais reduzidos
- Melhor colaboração e acompanhamento
A implementação de pipelines de implantação automatizados com o GitHub Actions e o Azure melhora significativamente suas práticas DevOps, garantindo gerenciamento confiável e eficiente de recursos na nuvem.