使用自动化网站发布在Team Build期间强制应用程序池回收或网站重新启动

时间:2011-12-05 16:24:53

标签: asp.net tfs2010 tfsbuild msdeploy

在尝试创建自动TFS 2010团队构建时,我一直在苦苦挣扎,该团队构建使用MSDeploy将网站部署到我们的本地框之一。除了无法找到好的文档之外,问题的很大一部分是该站点使用本机C ++ DLL。我已经设法让事情现在几乎正常工作,并且站点将在构建期间部署但是本机dll通常在使用中,并且如果自上次重新启动以来访问该站点则阻止部署。在将文件部署到远程服务器之前,我希望构建强制应用程序池可以回收或重新启动站点/应用程序。我可以在命令提示符下使用以下命令手动实现此目的:

msdeploy -verb:sync -source:recycleApp -dest:recycleApp="Default Web Site/Application",computerName="MyServer"

如何将其挂钩到构建过程中,以便在发布管道尝试将文件复制到服务器之前发生?

1 个答案:

答案 0 :(得分:1)

您可以在工作流程中使用InvokeProcess活动。然后,您可以调用包含上述命令行的批处理脚本。

您可以拖动活动并将其作为发布前的步骤插入(假设您正在使用工作流设计器)。

如果您需要脚本以另一个用户身份运行,那么在链接的博客中会提供大量有用的建议here

我已经欠SO和Ewald让我们的TFS建立和运行。