Automatiserad distribution av molnresurser har blivit en viktig del av modern IT-verksamhet. Användning av verktyg som GitHub-åtgärder för att distribuera Azure-resurser effektiviserar arbetsflöden, minskar manuella fel och accelererar projektleverans. Denna artikel undersöker hur man implementerar automatiserad distribution av Azure-resurser med hjälp av GitHub-åtgärder.

Förstå grunderna

GitHub Actions är en kontinuerlig integration och kontinuerlig distribution (CI / CD) plattform som gör det möjligt för utvecklare att automatisera arbetsflöden direkt i sina GitHub repositories. Azure, Microsofts molnplattform, erbjuder en mängd resurser som Virtual Machines, Databases och App Services som kan tillhandahållas automatiskt genom skript och API.

Förutsättningar

  • Azure-konto med nödvändiga behörigheter
  • GitHub Repository för ditt projekt
  • Azure CLI installerat lokalt för inledande installation
  • Serviceprincip med bidragsgivare roll som tilldelats i Azure

Ställa in Azure Service Principal

Skapa först ett Service Principal för att tillåta GitHub-åtgärder att autentisera med Azure. Använd Azure CLI:

]

] []] ]]]lösenord ]] och ]]]]]][]]]]]] läggs till som hemligheter i GitHub.

Konfigurera GitHub hemligheter

Navigera till din GitHub-förvaring, gå sedan till Inställningar & gt; Hemligheter & gt; Åtgärder. Lägg till följande hemligheter:

  • ]AZURE CLIENT ID : ditt godkännande
  • ]AZURE SECRET: ditt lösenord
  • ]AZURE TENANT ID : din hyresgäst
  • ]AZURE SUBSCRIPTION ID : ditt abonnemangs-ID

Skapa GitHub-aktiviteter Workflow

I ditt förvar, skapa en ny arbetsflödesfil under ]. Den här filen kommer att definiera stegen för att distribuera Azure-resurser automatiskt.

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

Detta arbetsflöde loggar in Azure och distribuerar resurser baserat på dina ARM-mallar. Du kan anpassa distributionskommandon för att passa dina specifika resursförsörjningsbehov.

Fördelar med automatisk distribution

  • Konsekventa och repeterbara utplaceringar
  • Snabbare tillhandahållande av resurser
  • Minskat manuella fel
  • Förbättrat samarbete och spårning

Genomföra automatiska installationsrörledningar med GitHub Actions och Azure förbättrar dina DevOps-rutiner avsevärt, vilket säkerställer tillförlitlig och effektiv molnresurshantering.