provider - msdeploy 的 Manifest.xml 文件中的 runCommand 提供程序

标签 provider msdeploy

我试图通过使用 list 文件中的 runCommand 提供程序,通过 msdeploy 将运行批处理脚本(更多,前提是我能弄清楚)作为部署过程的一部分。

这就是我的 list 文件的样子

<MSDeploy.iisApp>
  <iisapp path="Default Web Site/SiteName" />

  <dbfullSql path="msdeploy.config" transacted="false" />
  ...(more calls to providers)

  <runCommand path="(call to batch script here)" />
</MSDeploy.iisApp>

list 文件中的所有内容都运行良好,但看起来我的命令并未实际运行。输出日志在应该调用我的命令的末尾给出了这一点。

Info: Adding child runcommand (MSDeploy.iisApp/runCommand).
Verbose: The synchronization completed in 1 pass(es).
Total changes: 85 (82 added, 3 deleted, 0 updated, 0 parameters changed, 0 bytes copied)

我使用以下命令来运行 msdeploy:

"C:\Program Files\IIS\Microsoft Web Deploy\msdeploy.exe" -verb:sync -source:package="package" -dest:iisApp="Default Web Site/SiteName" -setParam:name=bunch of parameters... -debug -verbose > MsDeployOutput.txt

我给 list 文件(也在我的源包中)的命令被识别(以任何方式)但从未执行。关于原因和解决方案有什么想法吗?

最佳答案

MsDeploy 还有一个自动提供程序,用于部署包的内容。所以你必须将命令行更改为

"C:\Program Files\IIS\Microsoft Web Deploy\msdeploy.exe"-verb:sync -source:package="package"-dest:auto -setParam:name=一堆参数... -debug -详细 > MsDeployOutput.txt

此外,如果您希望 list 启动,您需要将命令行修改为

"C:\Program Files\IIS\Microsoft Web Deploy\msdeploy.exe"-verb:sync -source:package="package"-dest:manifest="manifestLocation"-setParam:name=一堆参数.. .-debug -verbose > MsDeployOutput.txt

MsDeploy 将发挥它的魔力。

谢谢

关于provider - msdeploy 的 Manifest.xml 文件中的 runCommand 提供程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1511792/

相关文章:

json - Flutter 'List<dynamic>' 不是类型 'Map<String, dynamic>' 的子类型

firebase - 使用 Flutter ChangeNotifierProvider 进行身份验证

msbuild - MSBuild 远程 Web 部署中的 App_Offline

asp.net - MSDeploy setParameter.xml 不转换 web.config

java - guice中非单例的延迟加载

flutter - 添加到模型时数据丢失

msbuild - 如何配置发布配置文件以使用 NTLM 身份验证

msdeploy - Web 部署错误 ERROR_DESTINATION_NOT_REACHABLE

asp.net - Web 部署和 Parameters.xml : How to share parameters among multiple projects