Как скопировать сборку Visual Studio Team Service в новый проект?

Я перемещаю определенный набор сборок из существующего проекта Visual Studio Team Service в новый. К сожалению, я не могу найти способ переноса определений сборки из одного проекта в другой. Похоже, что нет функции импорта/экспорта или другого механизма.

Есть ли способ переместить их без ручного воссоздания сборок в новом проекте?


person jlo    schedule 27.02.2016    source источник


Ответы (6)


Теперь это доступно в веб-интерфейсе VSTS Build Definitions:

Экспорт и клонирование VSTS.

person marv    schedule 14.07.2017

В Visual Studio Marketplace есть расширение Export/Import Build Definition, которое вы можете использовать прямо сейчас. .

person Eddie Chen - MSFT    schedule 02.09.2016

Вы можете сделать что-то вроде следующего:

$project1Url = "http://tfs:8080/tfs/collection/project1/_apis/build/definitions/$($buildId)?api-version=2.0"
$obj = Invoke-RestMethod -Uri $project1Url -Method Get -ContentType "application/json" -UseDefaultCredentials

$obj.project = $null

#TODO: Update all repository/source control info, too.

$json = ConvertTo-Json $obj -Depth 3

$project2Url = "http://tfs:8080/tfs/collection/project2/_apis/build/definitions/?api-version=2.0"
Invoke-RestMethod -Uri $url -Method Post -Body $json -ContentType "application/json" -UseDefaultCredentials

Суть такова: получить существующее определение из исходного проекта (projec1), очистить связи проекта, установить новую информацию о репозитории по мере необходимости и отправить новое определение в виде POST (CREATE) в целевой проект (project2).

person Codingrunr    schedule 20.07.2016
comment
пример полезной нагрузки сборки json для изменения: ericksegaar.com/2015/10/16/ - person JoeBrockhaus; 27.07.2016

Невозможно скопировать или синхронизировать шаблон определения сборки vnext между командными проектами. Шаблон определения сборки предназначен только для текущего командного проекта. Поэтому вам нужно создать шаблон определения сборки для каждого командного проекта.

А также был запрос функции на UserVoice, вы можете проголосовать и отслеживать его

VSO build vnext: обмен шаблонами сборки между проектами https://visualstudio.uservoice.com/forums/330519-team-services/suggestions/8468566-vso-build-vnext-share-build-templates-between-pro

Однако этого можно добиться с помощью API. Вот простой инструмент, который вы можете использовать. (Должно быть в одной коллекции командных проектов.)

person PatrickLu-MSFT    schedule 29.02.2016
comment
Что такое вследующее? Тег? - person Peter Mortensen; 25.12.2018

Для этого вы можете использовать REST API. Существует пример показан здесь.

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

person Dhruv Patel    schedule 22.04.2016

In

  1. При экспорте исходного проекта (через...) каждое определение сборки

  2. В проекте «Назначение» в представлении папок для определений сборки выберите «Создать» -> «Импорт» и настройте: Путь к репозиторию пула агентов (будет рассмотрен позже при сохранении импорта).

  3. Экспортировать успешно импортированное определение сборки

  4. Отредактируйте оставшиеся извлеченные определения сборки и замените (значениями из первого успешного импортированного определения сборки) значения для пула агентов, репозитория и пути.
  5. Импорт оставшихся сборок Просмотрите имя (удалите суффикс -import) Просмотрите пул агентов Просмотрите путь в представлении папки целевого проекта при сохранении импортированной сборки
person SCDomingos    schedule 28.02.2019