Добавление PublishProfile в аргументы tfsbuild msbuild делает пустую папку (кроме файлов журналов)
Сервер сборки: TFS 2012 с обновлением 4.
Я использую цепочечные конфигурации для применения преобразований web.config. У меня есть две конфигурации решения, Debug и Release.
У меня есть три профиля публикации для моего веб-приложения, DEV, UAT и PROD.
В моем buid-сервере я настроил его для использования конфигурации "Release" и добавил следующее в аргументы MSBuild:
/p:DeployOnBuild=true;PublishProfile=UAT
Сборка завершается без сбоев, но она никогда не копирует выходные данные в папку удаления. Папка удаления должна содержать папку _PublishedWebsites, но вместо этого она содержит только папку журнала с файлами журнала в ней.
При сравнении файлов журналов для сборок, которые раньше работали с нерабочими сборками, я вижу, что все журналы, в которые копируются файлы, полностью отсутствуют.
Мои профили публикации настроены на использование публикации "файловая система", а не веб-развертывания. Не уверен, если это имеет значение или нет. Я попытался изменить профили публикации, чтобы использовать тот же каталог, что и папка для удаления на сервере сборки, но все, что происходит, - это то, что он в конечном итоге стирает эту папку и все ее содержимое.
Я хотел бы отметить, что если я удаляю "PublishProfile=UAT" из аргументов msbuild, он работает как положено, и журналы, и папка _PublishedWebsites копируются в папку удаления.
Кроме того, я знаю, что он делает вещи из профиля публикации, потому что я вижу эти действия в файле журнала. Это просто не делает дополнительный шаг, где он копирует все файлы в папку для размещения.
Идеи?
1 ответ
- Вы установили
Copy Output to Drop Folder
к истине и ввел путь дляThis build copies output files to a drop folder
? - Вы установили
Solution Specific Build Outputs
ложно? - Работает ли он с платформой и конфигурацией по умолчанию (удалите
Release
)? - Попробуй диагностическую сборку (
Verbosity=Diagnostic
) и проверьте выходыCopy Files to Drop Location
последовательность в журнале сборки.