Поделиться через


Основные понятия Azure Pipelines

Azure DevOps Services

В этой статье представлены основные понятия и компоненты, составляющие Azure Pipelines. Основные термины и части конвейера помогут вам эффективнее создавать, тестировать и развертывать код.

Подсказка

Вы можете использовать ИИ, чтобы помочь с этой задачей позже в этой статье или ознакомиться с включение помощи ИИ в Azure DevOps MCP Server, чтобы начать работу.

Общие сведения о ключевых понятиях

На следующем рисунке показаны основные компоненты и действия конвейера.

Схема, показывая основные понятия конвейера.

Дэйв Джарвис способствовал этому рисунку.

термины Azure Pipelines

Следующие термины определяют ключевые Azure Pipelines компоненты и процессы.

Агенты

Агент — это вычислительная инфраструктура с установленным программным обеспечением агента, которая одновременно выполняет одно задание конвейера. Например, задание может выполняться в агенте Ubuntu, размещенном корпорацией Майкрософт. Дополнительные сведения о различных типах агентов и их использовании см. в разделе агенты Azure Pipelines.

Ограниченное количество шагов задач может выполняться без использования агента. Для получения дополнительной информации см. поддерживаемые задания без агента.

Утверждения и проверки

Утверждения и проверки определяют набор проверок, необходимых перед запуском конвейера или этапа. Ручное одобрение — это распространенный механизм контроля развертывания в продуктивных средах. Если в среде настроены проверки и утверждения, конвейер приостанавливается до успешного завершения всех проверок и утверждений.

Артефакты

Артефакты — это коллекции файлов или пакетов, опубликованных в ходе запуска и предоставляемых в распоряжение последующих задач пайплайна, таких как распространение или развертывание. Artifacts в Azure Pipelines отличаются от Azure Artifacts, части Azure DevOps, которая позволяет хранить, управлять и совместно использовать пакеты с помощью одного канала.

Непрерывная доставка

Непрерывная доставка (CD) — это процесс создания, тестирования и развертывания кода в одной или нескольких средах тестирования и рабочей среды. Развертывание и тестирование на нескольких этапах помогает управлять качеством, перехватив ошибки рано и часто.

Автоматические конвейеры выпуска CD могут использовать артефакты из конвейеров непрерывной интеграции (CI) для выпуска новых версий и исправлений. Постоянный мониторинг и оповещение обеспечивают видимость процесса CD.

Непрерывная интеграция

Непрерывная интеграция (CI) — это процесс, который выполняет автоматические тесты и выполняет сборку по расписанию при отправке кода или обоих. CI упрощает тестирование и сборку кода и помогает перехватывать проблемы в начале цикла разработки, когда они проще и быстрее устраняются. Конвейеры CI создают артефакты , которые конвейеры CD могут использовать для автоматического развертывания.

Развёртывание

Для конвейеров YAML задание развертывания — это коллекция шагов, которые выполняются последовательно в среде. Задания развертывания могут использовать такие стратегии, как runOnce, rolling, и canary. Дополнительные сведения см. в разделе "Задания развертывания".

В классических конвейерах развертывание выполняет задачи этапа развертывания, которые могут включать выполнение автоматических тестов, развертывание артефактов сборки и других указанных действий.

Группы развертывания

В классических конвейерах выпусков Azure Pipelines deployment group — это логическая группа целевых компьютеров развертывания. Для каждого целевого сервера в группе развертывания требуется установить агент развертывания. Дополнительные сведения см. в разделе "Подготовка агентов для групп развертывания".

Окружающая среда

Среда — это коллекция ресурсов, таких как виртуальные машины, контейнеры, веб-приложения или службы, в которых развертывается приложение. Конвейеры могут развертываться в одном или нескольких окружениях после завершения сборки и выполнения тестов.

Вакансии

Задание представляет границу выполнения набора шагов, которые выполняются последовательно в одном агенте. Этапы конвейера могут включать одно или несколько заданий. Задания по умолчанию не всегда выполняются последовательно.

Задания полезны для выполнения ряда шагов в разных средах. Например, этап сборки может содержать одно задание для создания x86 конфигурации и другое задание для создания x64 конфигурации.

Каждое задание выполняется на агенте, который выполняет все шаги в этом задании. Ограниченное количество шагов задач поддерживает задачи, выполняемые без агента. Для получения дополнительной информации см. поддерживаемые задания без агента.

Библиотека

Azure Pipelines Library включает безопасные файлы и группы переменных. Безопасные файлы — это способ хранения файлов и их совместного использования в конвейерах. Группы переменных хранят значения и секреты, которые можно передать в конвейер YAML или сделать доступными для нескольких конвейеров.

Трубопроводы

Конвейер Azure Pipelines определяет рабочий процесс для задач сборки, тестирования и развертывания, от запуска пакетного файла до автоматизации процесса CI/CD для приложения. Конвейер состоит из одного или нескольких этапов, содержащих задания и шаги.

Конвейеры можно определить с помощью yamL-редакторов или классических редакторов. Для получения дополнительной информации см. YAML против классических конвейеров.

Релизы

Выпуск — это набор артефактов с версиями, указанных в классическом конвейере. В выпуске включена вся информация, необходимая для запуска конвейера развертывания, такая как этапы, задачи, триггеры, политики утверждения и параметры развертывания. Вы можете создать выпуск вручную, с триггером развертывания или с помощью REST API.

В конвейерах YAML этапы сборки и выпуска включаются в определение многоэтапного конвейера.

Пробежки

Один запуск представляет одно выполнение конвейера. Во время выполнения Azure Pipelines сначала обрабатывает конвейер, а затем отправляет запуск одному или нескольким агентам для выполнения заданий. Процесс собирает логи из выполнения шагов и результаты выполнения тестов. Дополнительные сведения см. в разделе "Запуски конвейера".

Сценарии

Скрипт запускает командную строку, PowerShell или код Bash в качестве шага в конвейере. Вы можете писать кроссплатформенные скрипты для macOS, Linux и Windows. В отличие от предварительно упакованой задачи, скрипт — это пользовательский код, характерный для конвейера.

Этапы

Этап — это логическая граница в конвейере, которая может обозначать разделение задач, например сборка, тестирование и продакшн. Каждый этап содержит одно или несколько заданий. По умолчанию несколько этапов в конвейере выполняются один за другим. Вы можете указать другие условия для запуска этапа.

Определение этапов конвейера полезно в следующих случаях:

  • Отдельные группы управляют различными частями конвейера. Например, если разные руководители управляют заданиями тестирования и развертывания, то имеет смысл иметь отдельные этапы тестирования и рабочей среды.
  • Набор утверждений подключен к определенному заданию или набору заданий. Эти задания можно поместить в отдельные этапы для утверждения.
  • Конвейер имеет задания, необходимые для длительного выполнения. Такие задания можно поместить в собственные этапы.

Этапы

Шаг — это самый маленький блок конвейера. По умолчанию шаги выполняются друг за другом в задании. Шаг может быть скриптом или задачей.

Задачи

Задача — это предварительно упакованный скрипт или процедура, абстрактная с набором входных данных для определения автоматизации в конвейере. Сведения о доступных задачах см. в справочнике по задачам Azure Pipelines. Сведения о создании пользовательских задач см. в разделе "Добавление задачи расширения пользовательских конвейерных процессов".

Триггеры

Триггер — это событие, которое приводит к выполнению потока обработки данных. Конвейер можно активировать вручную или запустить по заданному расписанию. Вы также можете активировать конвейер для автоматического запуска при отправке в репозиторий, после завершения другой сборки или в других условиях. Дополнительные сведения см. в разделе "Указание событий, которые активируют конвейеры и классические триггеры выпуска".

Использование ИИ для изучения концепций конвейера

Если настроить Azure DevOps MCP Server, вы можете изучить понятия конвейера и устранить неполадки с конвейерами с помощью естественного языка.

задачи Пример запроса
Отображение неудачных сборок Show me failed builds this week in project <Contoso>
Проверка возможностей агента Which agents have capacity issues or long queue times in <Contoso>?
Перечисление этапов конвейера What stages are defined in the "CI-Main" pipeline in <Contoso>?
Просмотр последних запусков конвейера Show the last 10 pipeline runs for project <Contoso> and their results
Поиск медленных заданий Which jobs in the "Release-Prod" pipeline in <Contoso> are taking the longest?
Проверка триггеров What triggers are configured for the "Build-API" pipeline in <Contoso>?
Просмотр артефактов List the artifacts published by the latest run of "CI-Main" in <Contoso>
Проверка развертываний среды Show recent deployments to the "production" environment in <Contoso>
Определение блокировщиков согласований Are there any pending approvals blocking pipeline runs in <Contoso>?
Просмотр групп переменных What variable groups are used by pipelines in project <Contoso>?

Подсказка

Если вы используете Visual Studio Code, режим агента особенно полезен для изучения концепций конвейера и устранения сбоев сборки.