2016-06-17 6 views
1

У меня есть решение, которое содержит кучу проектов библиотеки классов и веб-сайт IIS. Я пытаюсь настроить teamcity для компиляции и развертывания проекта веб-сайта с помощью развертывания MSBuild/web.Развертывание проекта веб-сайта с TeamCity

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

мой вопрос, можно ли добиться того, что я ищу делать? или это можно сделать только с помощью проекта веб-приложения?

/P:Configuration=Release 
/P:DeployOnBuild=True 
/P:DeployTarget=MSDeployPublish 
/P:MsDeployServiceUrl=https://localhost:8172/msdeploy.axd 
/P:AllowUntrustedCertificate=True 
/P:MSDeployPublishMethod=WMSvc 
/P:CreatePackageOnPublish=True 
/P:UserName=SNIPPED 
/P:Password=SNIPPED 

Я попытался как MSBuild и Визуальные бегуны Студия с указанными выше параметрами

+0

Конечно, это возможно. Но, непонятно, из вашего вопроса, где вы застреваете. Что вы подразумеваете под «игнорированием параметров командной строки»? И какой тип скрипта вы используете (чистый файл MSBuild, файл .bat, Powershell, Gulp, Grunt и т. Д.) – NightOwl888

+0

Я не делал этого с веб-сайтом раньше .. но веб-приложения очень легко упаковывать в виде веб-развертывания (msdeploy) через определенные параметры MSBuild. – Bishoy

+0

@ NightOwl888 Я использую msbuild. я имею в виду, что он создает приложение, он просто пропускает ту часть, где предполагается ее развернуть. Я добавил аргументы командной строки – reds184

ответ

2

Эти аргументы MSBuild не будут работать на сайте только веб-приложений. Вы все равно можете использовать MSDeploy для упаковки веб-сайта и его развертывания, но вы должны его вручную.

Это сообщение в блоге, которое объясняет это далее.

http://www.dotnetcatch.com/2016/06/23/deploy-an-asp-net-website-not-web-application-with-msdeploy/

+0

спасибо человеку! Есть ли способ, которым я могу просто построить все это в самих командах? Это будет небольшая сложная передача переменных в файлы манифеста. Я думал, возможно, используя powershell, чтобы найти и изменить текст внутри них, но я думаю, что предпочел бы использовать командную строку явно – reds184

+0

Да, я подумал, что это будет следующий вопрос. Вы можете использовать WebDeploy Parameterization для объявления/установки параметров с использованием вида ProviderPath из командной строки MSDeploy. http://forums.iis.net/t/1179672.aspx – chief7