Table of Contents
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.