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.