Вопрос
Допустим Вы хотите изменить какой-то общий параметр сразу во всех Build Definitions. Например, путь для выгрузки артефактов.
Как это сделать? Ни экспорта/импорта, ни PowerShell модулей в 2016 году для VSTS не существует. Но зато есть REST API.
Как это сделать? Ни экспорта/импорта, ни PowerShell модулей в 2016 году для VSTS не существует. Но зато есть REST API.
Ответ
Переходим в VSTS в раздел Account -> Security -> Personal access tokens -> Add
Задаём название, срок действия, нажимаем "Create Token".
Теперь приступаем к скрипту на PowerShel.
Сначала зададим основные параметры
$PAT - Только что сгенерированный токен
$Instance, $Project - URL Вашего VSTS и название проекта, подробнее здесь.
$Version - Актуальная версия API
Далее сформируем HTTP Get запрос для получения списка ID всех Build Definitions.
В ответ мы получим JSON с которым довольно удобно работать в PowerShell.
Так можно получить все ID.
$BuildDefinitionsIDs = $BuildDefinitionsList.value.id
Далее сделаем цикл, который будет проходить по всем Build Definitions, выгружать описание в JSON и заменять необходимые параметры.
Тут логично ограничиться работой с JSON, но в моём случае старый адрес \\KR-VSOBUILD01 присутствует в самых разных шагах билда. Поэтому мне проще сохранить его описание в файл, произвести замену при помощи -Replace и потом прочитать из файла.
В выводе скрипта - результат для каждой Build Definitions
Скрипт целиком
How to make money from betting on football - Work Tomake Money
ОтветитьУдалитьIf https://tricktactoe.com/ you're having problems finding a winning 출장안마 bet online for the day of your septcasino choosing, then there are plenty of worrione.com opportunities available right หาเงินออนไลน์ here.