Итак, вот сделка. В настройках проекта веб-приложения я настроил пакет развертывания, который включает все файлы содержимого вместе с настройками IIS для сайта и пула приложений. Теперь, когда я перехожу к конфигурации сборки Team Build, я использую следующие аргументы для развертывания сайта.
/p:UseWPP_CopyWebApplication=True
/p:PipelineDependsOnBuild=False
/p:DeployOnBuild=True
/p:DeployTarget=MsDeployPublish
/p:CreatePackageOnPublish=True
/p:MSDeployPublishMethod=WMSVC
/p:MSDeployServiceUrl=https://<servername>:8172/MsDeploy.axd
/p:AllowUntrustedCertificate=True
/p:DeployIisAppPath="mysite.com"
/p:UserName=<domain>\<user>
/p:Password=<password>
Хотя это действительно работает, развертывание не удастся, если сайт mysite.com не существует на целевом сервере или если пул приложений настроен неправильно (т. Е. Несовпадение версии ASP.NET). Итак, я обнаружил, что создаю этот материал вручную, прежде чем смогу развернуть что-либо из Team Build. Есть ли способ это автоматизировать? Мне не хватает какого-то переключателя аргументов? Я предполагаю, что другой способ сформулировать этот вопрос: почему я должен все это настраивать, когда пакет включает в себя все настройки IIS и должен просто развернуться.
Спасибо за любую помощь / объяснение.
РЕДАКТИРОВАТЬ:
Я не совсем уверен, правда ли это, но я считаю, что не смогу создать пул сайтов / приложений. Насколько я понимаю, Team Build использует msbuild для общения с msdeploy, и эта ссылка очень ограничена в том, что она может делать. Итак, я могу посмотреть на изменение шаблона рабочего процесса сборки для выполнения командной строки для развертывания пакета (?).