Публикация TeamCity с помощью Visual Studio 2015
Я прочитал много статей о публикации из TeamCity с использованием различных версий Visual Studio. В настоящее время я использую v. 9.1.7 из TeamCity и Visual Studio 2015.
У меня есть 3 шага сборки при регистрации:
- Очистить И Восстановить
- Единица Теста
- публикации
когда я проверяю свои файлы, я получаю успешные тесты сообщение:
Я могу сказать отсюда, что что-то не так, как я ожидаю, что он скажет что-то о публикации. Когда я смотрю на журнал сборки, я вижу следующее:
[12:48:22][APIAPI.sln] опубликовать[12:48:22] [опубликовать] MSBuild[12:48:22] [MSBuild] APIAPIAPI.csproj: цель сборки: публикация [12: 48: 22][APIAPIAPI.csproj] _DeploymentUnpublishable
Мой шаг сборки публикации настройка таким образом:
в моем проекте API в Visual Studio я могу опубликовать в правильном месте в сети. Вот мой профиль публикации:
Я не уверен, что я упускаю. Я ожидаю, что шаг сборки публикации будет работать, как при щелчке пункта меню сборка->публикация в Visual Studio.
Я предполагаю, что я что-то упускаю или недопонимаю, что предполагается, что шаг сборки публикации.
любая помощь приветствуется.
5 ответов
я смог заставить его работать после нескольких дней и дней поиска. Я нашел часть ответа здесь Переполнение Стека. Фишка в том, чтобы заставить его работать из командной строки MSBuild:
C:\TFS\project\myProject\APIproject>в MSBuild apiproject.csproj файл /p: DeployOnBuild=true /p: PublishProfile= " Properties\PublishProfiles\DEV.pubxml" /p:VisualStudioVersion=14.0
Как только я получил это несколько раз, я смог создать Постройте шаг в Team City (см. Это вопрос/ответ) и я установил следующее:
- построить путь к файлу:
<location of the apiproject.csproj>
- версия MSBuild: Microsoft Build Tools 2015
- MSBuild ToolsVersion: 14.0
- запустить платформу: x86
- Параметры Командной Строки:
/p:DeployOnBuild=true /p:PublishProfile= "C:\TFS\API\API\Properties\PublishProfiles\DEV.pubxml" /p:VisualStudioVersion=14.0
IIRC, publishing from TeamCity требует определенных файлов или альтернативно VS, установленных на агенте сборки (что действительно не рекомендуется). Скопировали ли вы необходимые файлы в агент сборки?
где определено местоположение артефактов. И Вы можете использовать щупальца для публикации сборки в различных средах. Я думаю, вам нужно посмотреть на конфигурации артефактов.
вы можете использовать MSBuild runner для развертывания приложения / API
добавить параметр командной строки :
/t:Clean /p:DeployOnBuild=true /t:build /t:publish /p:PublishProfile=C:\_works\teamcity\publishprofiles\Publiush_Profile.pubxml /p:VisualStudioVersion=12.0
URL-адрес PublishPrfile должен быть вашим путем к профилю публикации.
Это будет работать для вас.
VS, вероятно, найдет ваш профиль публикации только с именем, например:
/p:DeployOnBuild=true;/p:PublishProfile=DEV;
очень полезно, если вы ведете более одного агента построения.
и при развертывании на IIS и вы, возможно, должны добавить AllowUntrustedCertificate=true;