Руководство по развертыванию сред в CI/CD с помощью Azure Pipelines
В этом руководстве описано, как интегрировать среды развертывания Azure (ADE) в конвейер CI/CD Azure Pipelines.
Непрерывная интеграция и непрерывная доставка (CI/CD) — это подход к разработке программного обеспечения, который помогает командам автоматизировать процесс создания, тестирования и развертывания изменений программного обеспечения. CI/CD позволяет чаще выпускать изменения программного обеспечения и с большей уверенностью.
Перед началом работы с этим руководством ознакомьтесь с ресурсами и концепциями сред развертывания, просмотрите основные понятия для сред развертывания Azure.
В этом руководстве описано следующее:
- Создание и настройка репозитория Azure Repos
- Подключение каталог в центр разработки
- Настройка подключения службы
- Создание конвейера
- Создать среду
- Тестирование конвейера CI/CD
Необходимые компоненты
- Учетная запись Azure с активной подпиской.
- Разрешения владельца для подписки Azure.
- Подписка Azure DevOps.
- Создайте учетную запись бесплатно .
- Организация и проект Azure DevOps.
- Среды развертывания Azure.
- Центр разработки и проект.
- Пример каталога , присоединенного к центру разработки.
Создание и настройка репозитория Azure Repos
- Войдите в организацию Azure DevOps (
https://dev.azure.com/<your-organization>
) и выберите проект. Замените заполнитель текста идентификатором<your-organization>
проекта. - Выберите Repos>Файлы.
- В разделе "Импорт репозитория" выберите "Импорт".
- В импорте репозитория Git выберите или введите следующее:
- Тип репозитория: Git
- Клонированный URL-адрес: https://github.com/Azure/deployment-environments
Настройка типов среды
Типы сред определяют различные типы сред, которые могут развертывать команды разработчиков. Для каждого типа среды можно применять разные параметры. Вы создаете типы среды на уровне центра разработки и ссылаетесь на этот уровень проекта.
Создание типов сред центра разработки:
Войдите на портал Azure.
В центрах разработки выберите центр разработки.
В меню слева в разделе "Конфигурация среды" выберите типы среды и нажмите кнопку "Создать".
Выполните следующие действия, чтобы создать три типа среды: песочница, FunctionApp, WebApp. В поле "Создание среды" введите следующие сведения и нажмите кнопку "Добавить".
Имя. Значение Имя Введите имя типа среды. Теги Введите имя тега и значение тега. Убедитесь, что тип среды добавлен, проверка уведомления портал Azure.
Создание типов среды проекта:
В меню слева в разделе "Управление" выберите "Проекты" и выберите проект, который вы хотите использовать.
В меню слева в разделе "Конфигурация среды" выберите типы среды и нажмите кнопку "Добавить".
Чтобы добавить три типа среды: песочницу, FunctionApp, WebApp. В поле Add environment type to project-name (Добавить тип среды в <имя> проекта) введите или выберите следующие сведения:
Имя. Значение Тип Выберите тип среды центра разработки, чтобы включить для конкретного проекта. Подписка на развертывание Выберите подписку, в которой создается среда. Удостоверение развертывания Выберите удостоверение, назначаемое системой, или управляемое удостоверение, назначаемое пользователем, для выполнения развертываний от имени пользователя. Разрешения на роли создателя среды для ресурсов>среды Выберите роли, чтобы предоставить доступ к ресурсам среды. Разрешения на ресурсы>среды Выберите пользователей или группы Microsoft Entra, чтобы назначить определенные роли в ресурсах среды. Теги Введите имя тега и значение тега. Эти теги применяются ко всем ресурсам, созданным в рамках среды. Убедитесь, что тип среды добавлен, проверка уведомления портал Azure.
Настройка подключения к службе
В Azure Pipelines вы создадите подключение к службе в проекте Azure DevOps для доступа к ресурсам в подписке Azure. При создании подключения к службе Azure DevOps создает объект субъекта-службы Microsoft Entra.
Войдите в организацию Azure DevOps (
https://dev.azure.com/<your-organization>
) и выберите проект. Замените заполнитель текста идентификатором<your-organization>
проекта.Выберите параметры>> службы "Параметры проекта" и "Создать подключение службы".
В области подключения к службе выберите Azure Resource Manager и нажмите кнопку "Далее".
Выберите метод проверки подлинности субъекта-службы (автоматически) и нажмите кнопку "Далее".
Введите сведения о подключении службы и нажмите кнопку "Сохранить ", чтобы создать подключение службы.
Поле значение Уровень области Подписка. Подписка Выберите подписку Azure, в которую размещается ресурс центра разработки. Группа ресурсов Выберите группу ресурсов, содержащую ресурс центра разработки. Имя подключения службы Введите уникальное имя подключения к службе. Предоставление разрешения на доступ ко всем конвейерам Флажок установлен. В списке подключений к службе выберите созданный ранее элемент и выберите "Управление субъектом-службой". Портал Azure откроется на отдельной вкладке браузера и отображает сведения о субъекте-службе.
Скопируйте значение отображаемого имени в портал Azure. Это значение используется на следующем шаге для предоставления разрешений на выполнение нагрузочных тестов субъекту-службе.
Предоставление доступа к подключению службы к проекту ADE
Среды развертывания Azure используют управление доступом на основе ролей для предоставления разрешений для выполнения определенных действий в ресурсе ADE. Чтобы внести изменения из конвейера CI/CD, необходимо предоставить роль пользователя среды развертывания субъекту-службе.
- В портал Azure перейдите к проекту ADE.
- Выберите элемент управления доступом (IAM)>Добавить>назначение ролей.
- На вкладке "Роль" выберите "Пользователи сред развертывания" в списке ролей функции задания.
- На вкладке "Участники" выберите " Выбрать участников", а затем используйте отображаемое имя, скопированное ранее для поиска субъекта-службы.
- Выберите субъект-службу и нажмите кнопку "Выбрать".
- На вкладке "Рецензирование и назначение" нажмите кнопку "Рецензирование" и "Назначить", чтобы добавить назначение роли.
Теперь вы можете использовать подключение к службе в определении рабочего процесса Azure Pipelines для доступа к средам ADE.
Предоставление доступа учетной записи к проекту ADE
Чтобы просмотреть среды, созданные другими пользователями, включая подключение к службе, необходимо предоставить учетной записи доступ на чтение к проекту ADE.
- В портал Azure перейдите к проекту ADE.
- Выберите элемент управления доступом (IAM)>Добавить>назначение ролей.
- На вкладке "Роль" выберите средство чтения сред развертывания в списке ролей функции задания.
- На вкладке "Участники" выберите " Выбрать участников", а затем найдите собственную учетную запись.
- Выберите свою учетную запись из списка и выберите команду "Выбрать".
- На вкладке "Рецензирование и назначение" нажмите кнопку "Рецензирование" и "Назначить", чтобы добавить назначение роли.
Теперь вы можете просмотреть среды, созданные рабочим процессом Azure Pipelines.
Настройка конвейера
Измените файл в репозитории azure-pipelines.yml
Azure Repos, чтобы настроить конвейер.
В конвейере вы определите шаги по созданию среды. В этом конвейере вы определите шаги по созданию среды в качестве задания, которая представляет собой ряд шагов, которые выполняются последовательно как единица.
Чтобы настроить конвейер, выполните следующие действия.
- Укажите Подключение службы для использования, а конвейер использует Azure CLI для создания среды.
- Используйте встроенный скрипт для выполнения команды Azure CLI, которая создает среду.
Azure CLI — это средство командной строки, которое предоставляет набор команд для работы с ресурсами Azure. Дополнительные сведения о командах Azure CLI см. в az devcenter.
В проекте Azure DevOps выберите Repos>Files.
В области "Файлы" в папке
.ado
выберитеazure-pipelines.yml
файл.В файле измените существующее содержимое
azure-pipelines.yml
с помощью следующего кода:Замените
<AzureServiceConnectionName>
именем созданного ранее подключения к службе.Inline script
Замените каждый из следующих заполнителей значениями, соответствующими вашей среде Azure:Заполнитель Значение <dev-center-name>
Имя центра разработки. <project-name>
Имя проекта. <catalog-name>
Имя каталога. <environment-definition-name>
Не изменяйте. Определяет определение среды, используемое. <environment-type>
Тип среды. <environment-name>
Укажите имя новой среды. <parameters>
Не изменяйте. Ссылается на json-файл, определяющий параметры среды.
Выберите Фиксация, чтобы сохранить изменения.
В области "Фиксация изменений" введите сообщение фиксации и нажмите кнопку "Зафиксировать".
Создание среды с помощью конвейера
Затем запустите конвейер, чтобы создать среду ADE.
- В проекте Azure DevOps выберите Pipelines.
- Выберите созданный ранее конвейер, а затем нажмите кнопку "Запустить конвейер".
- Вы можете проверка по ходу выполнения конвейера, выбрав имя конвейера и выбрав "Запуски". Выберите запуск, чтобы просмотреть сведения о выполнении конвейера.
- Вы также можете проверка ход создания среды в портал Azure, выбрав центр разработки, выбрав проект и выбрав среды.
Это задание можно вставить в любом месте конвейера непрерывной интеграции (CI) и (или) непрерывной доставки (CD). Ознакомьтесь с документацией по Azure Pipelines, чтобы узнать больше о создании конвейеров и управлении ими.
Очистка ресурсов
Когда вы закончите работу с ресурсами, созданными в этом руководстве, их можно удалить, чтобы избежать расходов.
Используйте следующую команду, чтобы удалить среду, созданную в этом руководстве:
az devcenter dev environment delete --dev-center <DevCenterName> --project-name <DevCenterProjectName> --name <DeploymentEnvironmentInstanceToCreateName> --yes