Задача сборки TFS: настраиваемый список выбора со связанными значениями артефактов

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

Приложение, которое мы хотим развернуть, состоит из разных частей (подприложений). Но в Release Management мы хотим развернуть разные части в одном определении выпуска (на данный момент).

Каждое субприложение можно сопоставить со сборкой, которая является связанным артефактом в определении выпуска. В задаче, которую я сейчас создаю, я хочу иметь список выбора, в котором отображается связанный артефакт, который необходимо развернуть. Хотелось бы получить эту информацию. Поэтому я могу передать имя сборки, которая должна быть развернута, в базовый сценарий PowerShell. С помощью этой информации я могу получить номер сборки, который необходимо развернуть, с помощью метода, описанного на следующем сайте: https://www.visualstudio.com/en-us/docs/release/author-release-definition/understanding-artifacts#artifact-variables . С помощью этой информации я могу создать REST-запрос для запуска выпуска.

Я проверил репозиторий задач VSTS на Github, но не нашел ничего похожего. Мне было интересно, знает ли кто-нибудь, возможно ли это? Если нет, то каковы альтернативы? Или кто-то знает расширение, где что-то подобное делали?

Заранее спасибо.

Я разрабатываю этот плагин для TFS2015U3 или TFS15RC1.


person mrtentje    schedule 18.09.2016    source источник


Ответы (1)


Нет, нет никакого способа получить связанные артефакты, а затем заполнить ими список выбора непосредственно в задаче выпуска, поскольку перед запуском выпуска задача не может знать, какая сборка будет развернута.

Альтернативный способ - добавить поле ввода и вручную ввести номер сборки в задаче.

Обновление:

Если вы хотите заполнить pickList псевдонимом связанных артефактов, вы можете создать пользовательская конечная точка службы, чтобы сначала получить связанные артефакты через Rest Call, а затем привязать dataSource к pickList в задаче сборки. введите описание изображения здесь Вот URL-адрес Rest API, чтобы получить определение выпуска, которое включает информацию о связанных артефактах: Получить определение выпуска.

person Eddie Chen - MSFT    schedule 19.09.2016
comment
Спасибо за ваш ответ. Я не хочу иметь список номеров сборки. Но список названий сборок, которые связаны с выпуском. Если у меня есть эта информация, я могу получить номер сборки в скрипте во время выполнения выпуска (через переменные среды). - person mrtentje; 19.09.2016
comment
@mrtentje Извините, что неправильно понял ваш вопрос. Также нет никакого способа показать связанный псевдоним сборки в задаче напрямую, но для этого есть обходной путь, подробности см. В моем обновленном ответе. - person Eddie Chen - MSFT; 20.09.2016
comment
Спасибо за ответ. Я тоже думал об этом решении. Но API требует идентификатор определения выпуска. Таким образом, единственные ситуации, когда список не состоит из фактических данных, - это когда вы создаете новое определение выпуска и добавляете задачу (и еще не сохранили ее), и если вы обновляете список связанных артефактов (и не сохранили это еще)? - person mrtentje; 20.09.2016
comment
@mrtentje Да, ты прав. API может получить только сохраненные конфигурации. - person Eddie Chen - MSFT; 20.09.2016