надеюсь, это поможет
есть одно решение, которое содержит один проект веб-приложения и несколько сопутствующих проектов. Наш TFS 2010 каждую ночь создает это решение и развертывает веб-приложение на сервере IIS. Это бежит как ветер.
На вкладке «Процесс» определения сборки TFS вы можете указать «Аргументы MSBuild». Это значение, которое установлено в нашем определении сборки (все в одной строке):
/p:DeployOnBuild=True
/p:DeployTarget=MsDeployPublish
/p:CreatePackageOnPublish=True
/p:MSDeployPublishMethod=WMSVC
/p:MSDeployServiceUrl=<service url of IIS>
/p:DeployIisAppPath="<a website>"
/p:UserName=<domain>\<user
/p:Password=<password>
Этот пост в блоге объясняет всю установку:http://vishaljoshi.blogspot.com/2010/11/team-build-web-deployment-web-deploy-vs.html.
Все идет нормально.
Теперь мы добавили второй проект веб-приложения, который мы хотим развертывать также на одном и том же IIS каждую ночь. К сожалению, в этом случае настройка не применяется. TFS развертывает только одно веб-приложение.
Есть другие с такой же проблемой:
TFS 2010 + MSDeploy, когда решение имеет несколько веб-приложений
а также
WebDeploy для развертывания нескольких веб-сайтов
Вишал Р. Джоши предлагает добавить некоторые свойства в каждый проект веб-приложения. Теперь сборка релиза будет генерировать веб-пакет (zip-файл) для каждого проекта веб-приложения, для которого определены следующие свойства:
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DeployOnBuild>True</DeployOnBuild>
<DeployTarget>Package</DeployTarget>
<CreatePackageOnPublish>true</CreatePackageOnPublish>
</PropertyGroup>
Хорошо. Но как заставить TFS развернуть каждое веб-приложение в IIS? Есть другие идеи?