我正在使用 Appveyor 的 Webdeploy 将 ASP.NET Core RC2 应用程序部署到 Azure 应用程序服务实例。
msdeploy.exe -source:IisApp='%s\.deploy' -dest:IisApp='%s',ComputerName='https://%s.scm.azurewebsites.net/msdeploy.axd',UserName='$%s',Password='%s',IncludeAcls='False',AuthType='Basic' -verb:sync -enableLink:contentLibExtension -retryAttempts:2"
这在 RC1 上运行良好,但现在我收到错误消息:
错误代码:ERROR_FILE_IN_USE 更多信息:Web Deploy 无法修改目标上的文件“MyTeam.exe”,因为它已被外部进程锁定。为了使发布操作成功,您可能需要重新启动应用程序以释放锁定,或者在下次尝试发布时为 .Net 应用程序使用 AppOffline 规则处理程序。
正如我从错误消息中了解到的,这可以通过添加来解决
<EnableMSDeployAppOffline>true</EnableMSDeployAppOffline>
在 webdeploy 的 .pubxml 文件中,但由于我没有 .pubxml 文件,所以我想知道;
有没有办法使用 msdeploy.exe 命令指定 EnableMSDeployAppOffline?
或者从我的部署环境(AppVeyor)关闭和重新启动应用服务的任何其他优雅方式?