Implementarea automată a resurselor cloud a devenit o parte vitală a operațiunilor IT moderne. Folosind instrumente precum acțiunile GitHub pentru a implementa resursele Azure raționalizează fluxurile de lucru, reduce erorile manuale și accelerează livrarea proiectelor. Acest articol explorează modul de implementare automată a implementării resurselor Azure utilizând acțiunile GitHub.

Înţelegerea elementelor de bază

GitHub Actions este o platformă de integrare continuă și implementare continuă (CI/CD), care permite dezvoltatorilor să automatizeze fluxurile de lucru direct în depozitele lor GitHub. Azure, platforma cloud a Microsoft, oferă o varietate de resurse, cum ar fi mașini virtuale, baze de date și servicii de aplicații, care pot fi furnizate automat prin scripturi și API-uri.

Precondiții

  • Contul Azure cu permisiuni necesare
  • Depozitul GitHub pentru proiectul dumneavoastră
  • Azure CLI instalat local pentru configurarea iniţială
  • Serviciul Principal cu rol de contribuitor atribuit în Azure

Configurarea serviciului de azură principal

În primul rând, creați un serviciu Principal pentru a permite acțiunilor GitHub să se autentifice cu Azure. Utilizați Azure CL:

Notă jos applid[, pasc[ și tenant.Acestea vor fi adăugate ca secrete în GitHub.

Configurarea secretelor GitHub

Navighează în depozitul tău GitHub, apoi mergi la Setări > Secrete > Acţiuni. Adaugă următoarele secrete:

  • [ ]AZURE CLIENT ID: aplicația dvs.
  • AZURE SECRET: parola dumneavoastră
  • AZURE TENANT ID: chiriașul dumneavoastră
  • AZURE SUBSCRIPtion ID: ID-ul abonamentului

Crearea fluxului de lucru al acțiunilor GitHub

În depozitul dumneavoastră, creați un nou fișier de flux de lucru sub . Acest fișier va defini pașii pentru a implementa automat resursele de azure.

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

Acest flux de lucru se conectează în Azure și pune în aplicare resurse bazate pe șabloane ARM. Puteți personaliza comenzile de implementare pentru a se potrivi nevoilor specifice de aprovizionare cu resurse.

Beneficiile unei desfăşurari automate

  • Desfășurări coerente și repetabile
  • Furnizarea mai rapidă a resurselor
  • Erori manuale reduse
  • O colaborare și o urmărire îmbunătățite

Punerea în aplicare a conductelor automatizate de implementare cu acţiunile GitHub şi Azure îmbunătăţeşte semnificativ practicile DevOps, asigurând gestionarea fiabilă şi eficientă a resurselor cloud.