Как создать новый конвейер сборки, используя Azure DevOps REST API? - PullRequest
0 голосов
/ 22 января 2020

Я пытаюсь создать новый конвейер сборки программно. Я ищу Azure DevOps REST API для этого действия. Я не получил подходящих примеров для создания конвейера с использованием REST API.

Пожалуйста, сообщите.

1 Ответ

1 голос
/ 22 января 2020

Как создать новый конвейер сборки с помощью Azure DevOps REST API?

Чтобы создать новый конвейер сборки, мы могли бы использовать REST API Определения - Создать :

POST https://dev.azure.com/{organization}/{project}/_apis/build/definitions?api-version=5.0

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

Чтобы решить эту проблему, обычно мы используем REST API Definitions - Get , чтобы получить тело ответа из шаблона. pipe:

GET https://dev.azure.com/{organization}/{project}/_apis/build/definitions/{definitionId}?api-version=5.0

Тогда нам просто нужно обновить соответствующие свойства, изменив тело ответа.

Теперь мы получили новое тело запроса для нового конвейера, мы могли бы использовать его с REST API Definitions - Create для создания нового конвейера.

Вы можете проверить этот поток для получения более подробной информации.

Обновление:

После создания определения сборки, он создаст файл azure -pipelines.yml и сохранит в хранилище, как Azure Repos?

Нет, если вы хотите создать определение типа YAML , использующее остальные API, не создаст соответствующий файл yaml для нашего репо, поскольку этот API Definitions - Create только отправляет тело запроса в конвейер, не управляет нашим репо. В настоящее время поддерживается создание определения сборки, которое связывает с файлом YAML в репозитории Git. Если вы хотите создать yaml автоматически, вы можете проверить REST API Pushes - Create .

. Именно в этом месте REST API Definitions - Create необходимо улучшить для поддержки конвейера YAML. , Вы можете добавить свой запрос на эту функцию на нашем сайте UserVoice (https://developercommunity.visualstudio.com/content/idea/post.html?space=21), который является нашим основным форумом для предложений продуктов. Спасибо за помощь в создании более совершенных Azure DevOps:

enter image description here

Надеюсь, это поможет.

...