Как импортировать сборку DevOps?

#build #azure-devops

#сборка #azure-devops

Вопрос:

Я хочу взять сборку из одного проекта #DevOps и поместить ее в другой проект. Я вижу, как экспортировать сборку в JSON, но не вижу способа ее импортировать.

Я видел другой вопрос SO о том, как это сделать для релизов, но, похоже, это не помогло.

Ответ №1:

Перейдите в «Сборки» и выберите » Создать» и выберите «Импортировать конвейер» там:

введите описание изображения здесь

Комментарии:

1. Я хочу импортировать сборку, а не конвейер. Я экспортировал сборку. Могу поверить, что я пытался импортировать сборку в конвейер, но, похоже, это ничего не дало.

2. это не имеет никакого смысла, что значит импортировать сборку?

3. Я думаю, это просто терминология. Я имею в виду импортировать определение сборки, которое, вероятно, то же самое, что и конвейер. Я вижу опцию импортировать конвейер на вкладке Сборки после того, как я создал хотя бы один «конвейер». Я импортировал ее, и все выглядит хорошо, за исключением того, что триггер основан на неправильном репозитории. Возможно, мне нужно изменить файл JSON перед его импортом.

Ответ №2:

Перейдите в конвейер сборки и отредактируйте сборку. Затем вы можете отобразить полный список задач для ваших заданий агента в виде файла YAML. Azure DevOps - экспорт задач сборки в виде файла YAML

Теперь сохраните файл YAML как документ типа .yaml в вашем репозитории кода.

Затем вы можете создать новый конвейер сборки в DevOps и включить ранее экспортированный файл YAML.

Ответ №3:

У меня была очень похожая проблема, мне нужно было экспортировать сборки из TFS 2015 в TFS 2017. Для достижения этой цели я использовал это расширение :

https://marketplace.visualstudio.com/items?itemName=onlyutkarsh.ExportImportBuildDefinition

Я также написал скрипт, который экспортирует сборку из одного проекта и автоматически импортирует в другой проект. Дайте мне знать, если вы хотите, чтобы я также добавил этот скрипт.

Ответ №4:

Это невозможно.

Легко получить сборку через API в файл json.

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

Однако он не может импортировать эту сборку обратно или в другой конвейер. Это тоже не имеет смысла.

В качестве обходного пути предложите вам напрямую клонировать конвейер сборки и снова поставить его в очередь. Что может помочь.