TFS 2015 Опубликовать сборку артефактов в одном каталоге

Мы только что обновили с TFS 2010 до TFS 2015, и я воссоздаю XAML-Build-Definition в формате сборки /workflow в формате vNext.

В старой сборке было возможно вывести все файлы (библиотеки DLL) в одном каталоге без их исходной структуры каталогов.

Возможно ли это в новой структуре TFS 2015 Build?

У меня есть следующие Publish Build Artifact -Settings:

Artifact Type: File Share

Path: \\server\tfslib\$(Build.DefinitionName)\$(Build.DefinitionName)_$(Build.BuildNumber)

Проблема заключается в том, что структура каталога исходного решения сохраняется в выходном каталоге, указанном в Path. Как я могу получить результат без всего поддерева?

В качестве обходного пути я делаю это с шагом Powershell после Publish Build Artifact, но было бы неплохо сделать это во время самого процесса публикации.

Ответ 2

Это все еще возможно, вы можете передать следующий аргумент командной строки в свою задачу Visual Studio Build или MsBuild:

/p:OutputPath="$(Build.BinariesDirectory)"

Это даст указание заданию сборки перенаправить все выходные данные в каталог Binaries, как вы привыкли к старым сборкам XAML.

или вы можете использовать мою задачу помощника MsBuild с сайта Visual Studio Market Place для настройки пути вывода, затем добавьте переменную $(MsBuildAdditionalArguments) на ваш MsBuild или Visual Studio. Создайте дополнительные аргументы:

Задача помощника MsBuild введите описание изображения здесь

Задача Visual Studio Build/MsBuild введите описание изображения здесь

Ответ 3

Также попробуйте дать этот аргумент MSBuild

 /p:GenerateProjectSpecificOutputFolder=true /p:OutDirWasSpecified=true
 /p:OutputPath=$(Build.BinariesDirectory)