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


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

Azure DevOps Services

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

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

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

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

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

  • Ручной, запланированный или автоматизированный триггер приводит к запуску конвейера .
  • Пайплайн может содержать один или несколько этапов и развёртываться в одной или нескольких средах.
  • Этапы — это способ упорядочивания конвейеров, каждый из которых содержит одно или несколько заданий.
  • Задания выполняются в агентах или могут быть бессерверными.
  • Каждое задание содержит один или несколько шагов.
  • Шаг является наименьшим элементом конвейера и может быть задачей или скриптом.
  • Задача — это предварительно упаковаемый скрипт, выполняющий действие, например вызов REST API или публикация артефакта сборки.
  • Запуск конвейера создает артефакты, такие как файлы или пакеты.

Термины Azure Pipelines

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

Агенты

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

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

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

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

Артефакты

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

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

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

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

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

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

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

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

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

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

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

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

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

Вакансии

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

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

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

Библиотека

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

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

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

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

Релизы

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

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

Пробежки

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

Сценарии

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

Этапы

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

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

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

Этапы

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

Задачи

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

Триггеры

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