【问题标题】:Run Powershell script that lives in TFS source control运行位于 TFS 源代码控制中的 Powershell 脚本
【发布时间】:2012-07-03 20:00:02
【问题描述】:

我正在尝试在构建过程中运行 Powershell 脚本,但我不知道如何访问已签入源代码控制 (TFS 2010) 的 ps1 文件。存在类似的 SO question,但我实际上不确定它是否正确:

TFS 2010: run powershell script stored in source control

我的 TFS 源代码控制设置如下:

=项目
==构建脚本
===MyScript.ps1
==代码
===目录1
====我的解决方案.sln

我认为传递 SourcesDirectory + "\..\..\MyScript.ps1" 之类的东西(告诉 Powershell 脚本在哪里)会起作用,但我想我在某个地方。

谁能帮我弄清楚如何引用 ps1 文件并运行它?

【问题讨论】:

  • 是的,其他答案看起来完全正确。
  • @DaveShaw,我用我的源代码控制结构更新了我的问题,希望让我的问题更清楚一点。

标签: tfs powershell-2.0 tfsbuild


【解决方案1】:

您需要在构建定义中设置工作区,其中包括带有 Powershell 脚本的目录。

所以你的映射可能是这样的:

*Server*                    *Workspace*
$/Project/Code/Dir     -    $(SourcesDir)

您需要添加:

*Server*                    *Workspace*
$/Project/Code/Dir     -    $(SourcesDir)
$/Project/BuildScripts -    $(SourcesDir)/BuildScripts

然后您的 InvokeProcess 可以将 Path.Combine(SourceDirectory, "BuildScripts", "MyScript.ps1") 传递给 Powershell 命令行。

注意您还可以将$/Project/Code/Dir 工作区设置为$(SourcesDir)/Code

【讨论】:

  • 是的,就是这样...我没有为 BuildScripts 目录设置适当的工作区。再次感谢!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-03-06
  • 1970-01-01
  • 2012-01-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多