Используйте WebDeploy из VS2010 для запуска CMD на веб-сервере - PullRequest
1 голос
/ 16 января 2012

Я хочу выполнить некоторые командные файлы на веб-сервере (я контролирую его IIS) до и после операции развертывания с моего VS2010.

Я добавил поставщика «runCommand» в IIS моего сервера и добавил этот код в файл .csproj:

<Target Name="AddingCMDtoManifest">
  <Message Text="Adding CMD to Manifest" />
  <ItemGroup>
    <MsDeploySourceManifest Include="runCommand">
      <path>C:\blahblah.bat</path>
    </MsDeploySourceManifest>
  </ItemGroup>
</Target>

но, похоже, ничего не меняется, чего мне не хватает?

1 Ответ

0 голосов
/ 10 марта 2012

Может быть, вам нужно выполнить вашу цель в правильной фазе. Я сделал следующее, и это работает.

<PropertyGroup >
    <RunCommandPath>DeploySettings\NightlyBuild.RunCommand.cmd</RunCommandPath>
  </PropertyGroup>

  <Target Name="SetupCustomManifestProviders" BeforeTargets="AddContentPathToSourceManifest">
    <ItemGroup>
      <MsDeploySourceManifest Include="runCommand">
        <Path>$(RunCommandPath)</Path>
        <dontUseCommandExe>true</dontUseCommandExe>
        <waitInterval>10000</waitInterval>
        <AdditionalProviderSettings>dontUseCommandExe;waitInterval</AdditionalProviderSettings>
      </MsDeploySourceManifest>
    </ItemGroup>
  </Target>
...