Automatisert distribusjon av skyressurser har blitt en viktig del av moderne IT-operasjoner. Ved hjelp av verktøy som GitHub Handlinger for å distribuere Azure ressurser strømlinjeformer arbeidsflytene, reduserer manuelle feil og akselererer prosjektleveringen. Denne artikkelen utforsker hvordan du implementerer automatisert distribusjon av Azure ressurser ved hjelp av GitHub Handlinger.

Forstå grunnleggerne

GitHub Handlinger er en kontinuerlig integrasjon og kontinuerlig distribusjon (CI/CD) plattform som tillater utviklere å automatisere arbeidsflyter direkte i sine GitHub-arkiver. Azure, Microsofts skyplattform, tilbyr en rekke ressurser som virtuelle maskiner, databaser og app-tjenester som kan leveres automatisk gjennom skript og APIer.

Forutsetninger

  • Azure-konto med nødvendige tillatelser
  • GitHub-arkiv for prosjektet ditt
  • Azure CLI installert lokalt for første installasjon
  • Tjenestedirektør med bidragsyterrolle tildelt i Azure

Konfigurasjon av Azure Service

Først opprette en tjeneste-prinsipper for å tillate GitHub-handlinger å autentisere med Azure. Bruk Azure CLI:

AppId, passord og ]tenant. Disse vil bli lagt til som hemmeligheter i GitHub.

Konfigurere GitHub hemmeligheter

Gå til GitHub- lageret ditt og gå til Innstillinger > Secrets > Handlinger. Legg til følgende hemmeligheter:

  • AZURE CLIENT ID: appen din
  • AZURE SECRET: passordet ditt
  • AZURE TENANT ID: din leiebolig
  • AZURE SUBSCRIPTION ID: abonnements-ID

Opprette GitHub-handlingene Arbeidsflyt

I lageret ditt oppretter du en ny arbeidsflytfil under . Denne filen definerer trinnene for å distribuere Azure-ressurser automatisk.

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

Denne arbeidsflyten logger seg inn i Azure og distribuerer ressurser basert på ARM-malene. Du kan tilpasse distribusjonskommandoene for å passe til dine spesifikke ressurstilbydende behov.

Fordelene med automatisert depresjon

  • Konsekvente og gjentakbare utplasseringer
  • Raskere levering av ressurser
  • Reduserte manuelle feil
  • Forbedret samarbeid og sporing

Implementere automatiserte distribusjonsrørledninger med GitHub Handlinger og Azure forbedrer din DevOps-praksis betydelig, noe som sikrer pålitelig og effektiv cloud ressourcehåndtering.