TFS 2010:运行存储在源代码管理中的powershell脚本

时间:2011-06-08 12:38:57

标签: powershell tfs2010 automated-deploy

我们已经开始在我工作的公司使用TFS2010。我们创建电子商务Web应用程序(购物网站)。我正在创建一个自定义模板,以便在使用构建模板构建之后部署Web项目。 我查看了Web部署工具,但MSDN似乎表明它只能进行初始部署,我需要能够使用相同的脚本进行增量部署。

我正在考虑使用模板中的invokeActivity活动来使用powershell来完成这项工作,方法是指定一个FTP脚本,它自动将构建的输出复制到指定的FTP站点,然后运行SQL(升级)脚本,如果需要使用SSH或s powershell远程处理交互式会话。 (可能在单独的SQL脚本中指定)

对于我来说,有一些我不知道的事情,我无法通过使用谷歌来清楚:

排队时,我是否可以让用户指定源控件中存在的脚本(例如$(source)\scripts\ftpscript.ps1)作为要使用的脚本? powershell能够访问/使用该文件吗?或者我应该将它复制到构建目录并指定何时运行它? (我不知道如何设置模板以从源代码控制中获取文件,因此非常感谢指向一些有用信息的指针)

如果上一个根本不起作用,我可以在我的网站项目中创建一个文件夹\ scripts \,将其提交给源代码控制,然后使用BuildDetail.DropLocationRoot & "\scripts\"作为脚本的位置并提前复制通过启用强制复制选项来启动脚本文件?

1 个答案:

答案 0 :(得分:3)

要运行PowerShell脚本我认为你可以使用InvokeProcess活动,它会触发这样的事情: %windir%\ system32 \ windowspowershell \ v1.0 \ powershell.exe“$(SolutionRoot)\ test.ps1

是的,您可以使用“SourcesDirectory”关键字访问源代码管理中的脚本文件。