Консольное приложение сборки TFS 2018 не включено в артефакт сборки - PullRequest
0 голосов
/ 22 мая 2018

Я настраиваю инфраструктуру непрерывной интеграции и непрерывной доставки . Мое решение содержит веб-проекты, библиотеки DLL и консольное приложение.Моя проблема в том, что все мои проекты включены в артефакт сборки, кроме консольного приложения. Это стандартные аргументы MSBuild, которые я использую

/p:DeployOnBuild=true /p:WebPublishMethod=Package /p:PackageAsSingleFile=true /p:SkipInvalidConfigurations=true /p:DesktopBuildPackageLocation="$(build.artifactstagingdirectory)\WebApp.zip" /p:DeployIisAppPath="Default Web Site"

1 Ответ

0 голосов
/ 23 мая 2018

Для создания exe и файлов выпуска для консольного приложения в каталоге артефактов сборки не требуется никакой конкретной настройки проекта.

Однако, если вы хотите включить консольное приложение в артефакт, вы простонеобходимо добавить шаг Копировать файлы , чтобы скопировать консольное приложение в $(build.artifactstagingdirectory).Конечно, сначала вам нужно убедиться, что вы создали проект консольного приложения и успешно сгенерирован файл .exe.

Build.ArtifactStagingDirectory

Локальныйпуть к агенту, в который копируются любые артефакты перед отправкой в ​​место назначения.Например: c: \ agent_work \ 1 \ a.

Типичным способом использования этой папки является публикация артефактов сборки с помощью шагов Копирование файлов и Публикация артефактов сборки.

В качестве альтернативы вы можете создать Консольное приложение отдельно с помощью задачи MSBuild и задачи VisualStudioBuild для построения остальных приложений.Ссылка на аналогичную ветку: TFS 2015 CI - артефакты сборки не создаются для консольного приложения в решении, имеющем веб-проекты, консоль и проекты WCF


ОБНОВЛЕНИЕ:

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

enter image description here

...