У статті розглянуто алгоритми впровадження автоматизованого розгортання ресурсів Azure, що використовують GitHub Actions для розгортання робочих процесів Azure, зменшення помилок ручних даних та прискорення реалізації проекту. У статті розглянуто алгоритми реалізації автоматизованого розгортання ресурсів Azure за допомогою GitHub Actions.

Розуміння основ

GitHub Actions - це платформа безперервної інтеграції та безперервного розгортання (CI/CD), яка дозволяє розробникам автоматизувати робочі процеси безпосередньо в своїх репозиторіїв GitHub. Azure, хмарна платформа Microsoft, пропонує різні ресурси, такі як віртуальні машини, бази даних та послуги додатків, які можуть бути надані автоматично через скрипти та API.

Передумови

  • Azure Account з необхідними дозволами
  • GitHub Репозиторій для вашого проекту
  • Azure CLI встановлено локально для початкової установки
  • Принцип роботи служби з роллю Внесса, призначене в Azure

Налаштування ключа служби Azure

Спочатку створити Принцип служби, щоб дозволити GitHub Дії, щоб автентифікувати з Azure. Використовуйте Azure CLI:

]

, , , і тенант. Вони будуть додані як секрети GitHub.

Налаштування GitHub Secrets

Навігайтеся на вашу репозиторію GitHub, потім перейдіть до налаштувань > секрети > Дії. Додати наступні секрети:

  • AZURE CLIENT ID: Ваш додатокId
  • AZURE SECRET: Ваш пароль
  • AZURE TENANT ID: ваш десятант
  • AZURE SUBSCRIPTION ID: Ваш ідентифікатор підписки

Створення робочого процесу GitHub

У Вашому репозиторію, створіть новий файл робочого процесу . Цей файл визначає кроки для розгортання ресурсів 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

Цей робочий процес в Azure і розгортає ресурси на основі ваших шаблонів ARM. Ви можете налаштувати команди розгортання, щоб відповідати вашим конкретним ресурсам, що забезпечує потреби.

Переваги автоматизованого розгортання

  • Консистентні та повторювані розгортання
  • Швидке надання ресурсів
  • Зменшення помилок ручного призначення
  • Покращення співпраці та відстеження

Впровадження автоматизованих систем розгортання з GitHub Actions та Azure значно підвищує ваші практики DevOps, забезпечуючи надійний та ефективний хмарний ресурсний менеджмент.