Проблема с командой запуска WebDeploy

Я пытаюсь развернуть пакет с помощью WebDeploy V3. Процесс установки заключается в синхронизации исходной папки с целевой папкой на удаленном компьютере и запуске определенного сценария PowerShell после завершения синхронизации. Выполняемая команда:

'"C:\Program Files\IIS\Microsoft Web Deploy V3\msdeploy.exe" -verb:sync -source:dirPath='C:\source' -dest:dirPath='D:\destination',computerName=XXX -postSync:runcommand='powershell -inputformat none D:\destination\Install.ps1',successReturnCodes=0'

Это дает следующую ошибку:

Info: Using ID '49edd786-d8a0-4acf-be7b-95dd6e1391cc' for connections to the remote server.  Performing '-postSync'... Info: 
Using ID '5ef9d005-82fa-4811-9f51-1741c8d622de' for connections to the remote server. 
Info: Adding MSDeploy.runCommand (MSDeploy.runCommand). 
Error: (11/28/2012 4:34:24 AM) An error occurred when the request was processed on the remote computer. Error: The entry type 'Unknown' was not expected at this time. The serialization stream may be corrupted.
Error count: 1.
Error during '-postSync'.  Total changes: 0 (0 added, 0 deleted, 0 updated, 0 parameters changed, 0 bytes copied)

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


person user1039580    schedule 28.11.2012    source источник


Ответы (2)


Из того, что я видел, использование runCommand для выполнения произвольной командной строки может быть немного ошибочным. Попробуйте переместить командную строку в файл bat или cmd и указать (полный?) Путь к нему. Файл будет загружен и запущен, если вы не попытаетесь передать ему какие-либо аргументы.

person Richard Szalay    schedule 29.11.2012

Для будущих читателей этого сообщения: я столкнулся с той же конкретной ошибкой (Error: The entry type 'Unknown' was not expected at this time. The serialization stream may be corrupted) после добавления использования поставщика runCommand в мой файл MyProject.wpp.targets для процесса MSBuild конвейера веб-публикации. Путь был прямым вводом оболочки cmd, используемым для очистки флагов только для чтения с attrib -R.

В моем случае мой сервер сборки был настроен с использованием WebDeploy 3.0, а сервер, на который нацелен пакет развертывания, был настроен с помощью Webdeploy 2.0. После обновления целевого сервера до Webdeploy 3.0 эта конкретная проблема была решена.

Однако из-за других ошибок, связанных с runCommand (предоставление правильного пути к исполняемому файлу назначения во время выполнения пакета), мое решение по-прежнему не работает полностью, поэтому относитесь ко всему этому с недоверием.

person bwerks    schedule 01.04.2015