Как я могу заставить TFS2010 запускать MSDEPLOY для меня через MSBUILD?

Есть отличный разговор по PDCдоступно здесь от Вишала Джоши, который описывает новые функции MSDEPLOY в Visual Studio 2010 - а также о том, как развернуть приложение в TFS. (Там также отличный разговор отСкотт Хансельман, но он не входит в TFS).

Вы можете использовать MSBUILD в TFS2010 для вызова MSDEPLOY для развертывания вашего пакета в IIS. Это делается с помощью параметров MSBUILD.

В докладе объясняются некоторые параметры командной строки, такие как:

/p:DeployOnBuild
/p:DeployTarget=MsDeployPublish
/p:CreatePackageOnPublish=True
/p:MSDeployPublishMethod=InProc
/p:MSDeployServiceURL=localhost
/p:DeployIISAppPath="Default Web Site"

Но где документация для этого - я не могу найти?

Я тратил весь день, пытаясь заставить это работать, и не могу понять это правильно и продолжаю заканчиваться различными ошибками. Если я запускаю пакетcmd файл разворачивается отлично. Если я запускаю WebDeploy через Visual Studio, он также работает отлично.

Но я хочу, чтобы все развертывание проходило черезmsbuild используя эти аргументы, а не отдельный вызовmsdeploy или запустить пакет.cmd файл. Как я могу это сделать?

PS. Да у меня естьWeb Deployment Agent Service Бег. У меня также есть служба управления, работающая под IIS. Я пытался использовать оба.

Аргументы, которые я использую:

/p:DeployOnBuild=True 
/p:DeployTarget=MsDeployPublish 
/p:Configuration=Release 
/p:CreatePackageOnPublish=True  
/p:DeployIisAppPath=staging.example.com   
/p:MsDeployServiceUrl=https://staging.example.com:8172/msdeploy.axd 
/p:AllowUntrustedCertificate=True

давая мне:

C: \ Program Files (x86) \ MSBuild \ Microsoft \ VisualStudio \ v10.0 \ Web \ Microsoft.Web.Publishing.targets (2660): Ошибка VsMsdeploy. (Удаленный агент (URL-адрес)https://staging.example.com:8172/msdeploy.axd?site=staging.example.com) не удалось связаться. Убедитесь, что служба удаленного агента установлена ​​и запущена на целевом компьютере.) Сведения об ошибке: Удаленный агент (URL-адресhttps://staging.example.com:8172/msdeploy.axd?site=staging.example.com) не удалось связаться. Убедитесь, что служба удаленного агента установлена ​​и запущена на целевом компьютере. Неподдерживаемый ответ был получен. Заголовок ответа «MSDeploy.Response» был «», но ожидался «v1». Удаленный сервер возвратил ошибку: (401) Несанкционированный.

Ответы на вопрос(8)

Ваш ответ на вопрос