Ресурсы в Azure Pipelines

Azure DevOps Services | Azure DevOps Server | Azure DevOps Server 2022

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

Ресурсы предлагают следующие преимущества:

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

Совместное использование ресурсов в конвейерах

Совместное использование ресурсов между конвейерами путем настройки их в пользовательском интерфейсе конвейеров. Затем наведите ссылку на эти ресурсы в задаче. Вы также можете получить доступ к некоторым общим ресурсам с помощью синтаксиса конвейераresources YAML.

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

Использование ресурса в конвейере зависит от типа конвейера и типа ресурса.

Для конвейеров YAML:

Например, чтобы использовать группы переменных в конвейере, добавьте переменные вбиблиотеку>. Затем наведите ссылку на группу переменных в конвейере YAML с помощью синтаксиса variables .

variables:
- group: my-variable-group

Чтобы вызвать второй конвейер из вашего конвейера, используя синтаксис resources, обратитесь к pipelines.

resources:
  pipelines:
  - pipeline: SmartHotel-resource # identifier for the resource (used in pipeline resource variables)
    source: SmartHotel-CI # name of the pipeline that produces an artifact

Использование ресурсов для повышения безопасности

Вы можете повысить безопасность конвейера с помощью ресурсов, определив способ использования ресурса и как предотвратить несанкционированный доступ.

Только для конвейеров YAML задайте ресурсы как защищенные или открытые. При защите ресурса можно применить утверждения и проверки, чтобы ограничить доступ к определенным пользователям и конвейерам YAML. Защищенные ресурсы включают подключения служб, пулы агентов, среды, репозитории, группы переменных и безопасные файлы.

Resource Как он потребляется? Как предотвратить использование непреднамеренного конвейера?
подключения к службе Используется задачами в YAML-файле, который использует подключение службы в качестве входных данных. Защищено с помощью проверок и разрешений конвейера. Проверки и разрешения конвейера контролируются пользователями подключения службы. Владелец ресурса может контролировать, какие конвейеры могут получить доступ к подключению к службе. Вы также можете использовать разрешения конвейера для ограничения доступа к определенным конвейерам YAML и всем классическим конвейерам.
секретные переменные в группах переменных Специальный синтаксис существует для использования групп переменных в конвейере или задании. Группа переменных добавляется как подключение к службе. Защищено с помощью проверок и разрешений конвейера. Проверки и разрешения конвейера контролируются пользователями группы переменных. Владелец ресурса может управлять доступом к группе переменных конвейеров. Вы также можете использовать разрешения конвейера для ограничения доступа к определенным конвейерам YAML и всем классическим конвейерам.
защищенные файлы Безопасные файлы используются задачами (например, задача "Скачать безопасный файл"). Защищено с помощью проверок и разрешений конвейера. Проверки и разрешения конвейера контролируются пользователями защищенных файлов. Владелец ресурса может управлять доступом к защищенным файлам конвейеров. Вы также можете использовать разрешения конвейера для ограничения доступа к определенным конвейерам YAML и всем классическим конвейерам.
Пулы агентов Существует специальный синтаксис для использования пула агентов для запуска задания. Защищено с помощью проверок и разрешений конвейера. Проверки и разрешения конвейера контролируются пользователями пула агентов. Владелец ресурса может контролировать, какие конвейеры могут получить доступ к пулу агентов. Вы также можете использовать разрешения конвейера для ограничения доступа к определенным конвейерам YAML и всем классическим конвейерам.
Средах Существует специальный синтаксис для использования среды в YAML. Защищено с помощью проверок и разрешений конвейера, контролируемых пользователями среды. Вы также можете использовать разрешения конвейера для ограничения доступа к определенной среде.
Репозитории Скрипт может клонировать репозиторий, если маркер доступа задания имеет доступ к репозиторию. Защищено с помощью проверок и разрешений конвейера, контролируемых участниками репозитория. Владелец репозитория может ограничить владение.
артефакты, рабочие элементы, конвейеры Артефакты конвейера — это ресурсы, но артефакты Azure не являются. Скрипт может скачать артефакты Azure, если токен доступа задания имеет доступ к каналу. Артефакт конвейера можно объявить как ресурс в разделе ресурсов — в первую очередь для намерения запуска конвейера при наличии нового артефакта или использования этого артефакта в конвейере. Артефакты Azure и рабочие элементы имеют собственные элементы управления разрешениями. Проверки и разрешения конвейера для веб-каналов не поддерживаются.
контейнеры, пакеты, веб-перехватчики Они находятся за пределами экосистемы Azure DevOps и управляются доступом с помощью подключений к службам. Существует специальный синтаксис для использования всех трех типов в конвейерах YAML. Защищено с помощью проверок и разрешений конвейера, контролируемых пользователями подключения службы.

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

Среды поддерживают следующие типы ресурсов:

Дальнейшие шаги