我试图通过使用清单文件中的 runCommand 提供程序,通过 msdeploy 将运行批处理脚本(更多,前提是我能弄清楚)作为部署过程的一部分。
这就是我的清单文件的样子
<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>
清单文件中的所有内容都运行良好,但看起来我的命令并未实际运行。输出日志在应该调用我的命令的末尾给出了这一点。
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
我给清单文件(也在我的源包中)的命令被识别(以任何方式)但从未执行。关于原因和解决方案有什么想法吗?
MsDeploy 还有一个自动提供程序,用于部署包的内容。所以你必须将命令行更改为
"C:\Program Files\IIS\Microsoft Web Deploy\msdeploy.exe" -verb:sync -source:package="package" -dest:auto -setParam:name=一堆参数... -debug -verbose > MsDeployOutput 。TXT
另外,如果您希望清单生效,您需要将命令行修改为
"C:\Program Files\IIS\Microsoft Web Deploy\msdeploy.exe" -verb:sync -source:package="package" -dest:manifest="manifestLocation" -setParam:name=一堆参数... -debug -verbose > MsDeployOutput.txt
MsDeploy 将发挥它的魔力。
Thanks,
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)