【发布时间】:2011-11-03 00:59:04
【问题描述】:
我已经设置了 TFS 构建来构建和部署 Web 应用程序。我通过 TFS 构建定义的 MSBuild 参数传入 MSDeploy 参数。第一次这工作正常。当有人访问 Web 应用程序时,其中一个控件(Microsoft 图表控件)会在我添加到解决方案的空目录中生成几个文件。
当我去重建(或触发持续集成)时,下一个构建通常会失败,因为它无法删除生成的文件之一。当我尝试手动删除文件时,它告诉我 IIS 工作进程正在使用它并且无法删除。
现在要构建构建,我每次都必须手动重新启动 IIS,考虑到 CI,这是不可取的。我查看了 Microsoft.Web.Publishing.Tasks.dll 并没有使用 MSDeploy 重新启动 IIS。
目前我认为在解决方案中添加临时文件的存根可能是一个解决方案(如果文件是部署的永久部分,MSDeploy 将能够关闭该进程)或者我可以做一些在解决方案文件中使用 Exec 来重置 IIS 不愉快。
这可能是一个很长的尝试,但有没有人反对这个并找到了一个很好的解决方案?
【问题讨论】:
-
我最终在解决方案中放置了一个存根文件,现在构建工作正常。
标签: iis tfs msbuild tfsbuild msdeploy