Как использовать VS2010 One-Click Publish (MsDeploy) для удаленного развертывания из командной строки? - PullRequest
9 голосов
/ 10 мая 2010

На удаленном веб-сервере я установил удаленный сервис http://x.x.x.x/MsDeployAgentService.

Если я использую команду публикации проекта веб-приложения в VS2010, я могу успешно опубликовать на этом удаленном веб-сервере и обновить определенный веб-сайт IIS.

Теперь я хочу выполнить эту возможность из командной строки.

Я предполагаю, что это два шага. Сначала соберите проект веб-приложения, используя соответствующую конфигурацию сборки:

msbuild "C:\MyApplication\MyWebApplication.csproj" 
        /T:Package /P:Configuration=Release

Затем введите команду MsDeploy для публикации / синхронизации с сервером удаления IIS:

msdeploy -verb:sync  
         -source:package="C:\MyApplication\obj\Release\Package\MyWebApplication.zip" 
         -dest:contentPath="My Production Website",
          computerName=http://x.x.x.x/MsDeployAgentService,
          username=adminuser,password=adminpassword

К сожалению, я получаю сообщение об ошибке:

Ошибка: (05.10.2010 15:52:02 PM) Произошла ошибка при обработке запроса на удаленном компьютере.

Ошибка: источник (sitemanifest) и пункт назначения (contentPath) не совместимы для данной операции. Количество ошибок: 1.

Я пробовал несколько разных комбинаций для провайдера, но без радости: (

Кому-нибудь удалось реплицировать публикацию проекта веб-приложения VS2010 «одним щелчком» из командной строки?

Ответы [ 2 ]

1 голос
/ 28 октября 2010

Что вы хотите сделать, это запустить файл [имя проекта] .deploy.cmd в папке / obj / release / package.

Во-первых, в Visual Studio перейдите на страницу свойств проекта, затем перейдите к параметру «Упаковать / опубликовать в Интернете», выберите конфигурацию «Выпуск», а затем укажите путь к содержимому в параметре «Веб-сайт IIS / имя приложения».

Теперь запустите точно такой же сценарий MSBuild, который вы уже используете, и он создаст пакет с путем к содержимому, определенным в файле / obj / release / package / [имя проекта] .SetParameters.xml.

Последний шаг - просто запустить [имя проекта] .deploy.cmd / Y / M: http://x.x.x.x/MsDeployAgentService в папке / obj / release / package.

Это вызывает MSDeploy со всеми соответствующими параметрами.

0 голосов
/ 22 июля 2010

Следуйте этой статье, чтобы правильно настроить обработчик веб-развертывания на сервере IIS.

http://learn.iis.net/page.aspx/516/configure-the-web-deployment-handler/

...