Отправка задач конвейера в Azure DevOps

Сервисы Azure DevOps | Azure DevOps Server | Azure DevOps Server 2022

Отправка пользовательских или встроенных задач конвейера в организацию Azure DevOps или коллекцию проектов Azure DevOps Server с помощью интерфейса командной строки Node для Azure DevOps (tfx-cli).

Важный

При загрузке стандартных задач в экземпляр Azure DevOps Server некоторые возможности задач могут не поддерживаться из-за версии агента или отсутствия поддержки на стороне сервера.

Дополнительные сведения о tfx-cliсм. в Node CLI для Azure DevOps на GitHub.

Необходимые условия

Категория Требования
Разрешения Членство в группе администраторов пула агентов на уровне организации или коллекции. Ознакомьтесь с группами безопасности, учетными записями служб и разрешениями.
Токены Личный токен доступа (PAT) с областью Пулы агентов (чтение и управление) или токеном Microsoft Entra. Для повышения безопасности рекомендуется использовать токены Entra вместо личных токенов доступа (PATs).
Инструменты Последняя версия Node.js и tfx-cli , установленная глобально: npm install -g tfx-cli

Вход с помощью tfx-cli

Войдите в Azure DevOps с помощью tfx-cli перед отправкой задач. Дополнительные варианты проверки подлинности см. в статье о межплатформенной проверке подлинности CLI для Azure DevOps.

Выполните следующую команду и укажите URL-адрес службы и PAT при появлении запроса:

tfx login

Используйте URL-адрес службы, соответствующий вашей среде:

Окружающая среда Формат URL-адреса
Azure DevOps Services https://dev.azure.com/{organization}
Сервер Azure DevOps http://{server}:{port}/DefaultCollection

Отправка задач

Совет

Если вам нужно обновить задачи конвейера по умолчанию, можно клонировать репозиторий azure-pipelines-tasks. Затем выполните сборку необходимых задач, следуя руководству по созданию задач.

Отправка задачи с помощью tfx-cli:

tfx build tasks upload --task-path <PATH_TO_TASK>

PATH_TO_TASK — путь к папке, содержащей скомпилированную задачу, в том числе task.json.

Важный

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

Проверка отправки

Убедитесь, что задача успешно отправлена:

tfx build tasks list

Выходные данные перечисляют все задачи на сервере, включая id, name, и version каждой задачи.

Удаление задачи

Удалите отправленную задачу, указав его идентификатор. Получите идентификатор задачи из выходных tfx build tasks list данных.

tfx build tasks delete --task-id <TASK_ID>

Предупреждение

Удаление задачи удаляет её с сервера. Любой конвейер, ссылающийся на удаленную задачу, завершается сбоем при следующем запуске.

Troubleshooting

Error Причина Исправление
401 Несанкционированный доступ Срок действия PAT истек, аннулирован или отсутствует область действия пулов агентов (чтение и управление). Создайте новый PAT с правильной областью.
403 — запрещено Ваша учетная запись не содержится в группе администраторов пула агентов . Попросите администратора организации добавить вас.
Задача уже существует На сервер была отправлена та же версия, что уже находится там. Увеличьте версию патча в task.json и снова загрузите.

Дополнительные сведения о tfx-cli см. в документации по интерфейсу командной строки Node для Azure DevOps.