Как включить / отключить сервисы проекта через API - PullRequest
0 голосов
/ 29 марта 2019

Я мигрирую с TFS 2015 на Azure DevOps. Процесс создания целевого проекта и импорта старого репозитория git можно легко выполнить с помощью Azure DevOps API.

Но в каждом новом проекте, созданном вручную или через API, всегда включены все службы (Boards, Pipelines, Test Lab, ...). Есть ли способ изменить настройки по умолчанию, какие службы должны быть включены в новых проектах? Или еще лучше метод API для включения / выключения определенных служб?

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

Я ничего не нашел в документах: https://docs.microsoft.com/en-us/rest/api/azure/devops/?view=azure-devops-rest-5.0

1 Ответ

1 голос
/ 30 марта 2019

Этот парень написал пост в блоге о том, как это сделать

Это выдержка из его поста:

PATCH https://{account}.visualstudio.com/_apis/FeatureManagement/FeatureStates/host/project/{project-id}/{feature-id}?api-version='4.1-preview.1'
content-type: application/json

{"featureId":"{feature-id}","scope":{"settingScope":"project","userScoped":false},"state":0}

Замените учетную запись, идентификатор проекта и идентификатор функции в зависимости от ситуации. Вот идентификаторы функций, о которых я знаю.

ms.vss-build.pipelines
ms.vss-test-web.test
ms.vss-work.agile
ms.vss-code.version-control

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

Редактировать: похоже, что .net SDK также имеет встроенную поддержку для этого

...