【问题标题】:TeamCity's build agent unable to find PowerShellTeamCity 的构建代理无法找到 PowerShell
【发布时间】:2012-07-03 17:55:46
【问题描述】:

我在 Windows 2008 R2 SP1 Core 上安装了 TC 的构建代理。服务器已安装 PowerShell 2.0(仔细检查,实际上从 PS 下载了 TC 安装)。查看一些构建配置,我发现它们与此代理不兼容,因为需要 powershell_x86/powershell_x64。我尝试删除构建代理目录以强制升级,但没有运气。有趣的是,如果我手动将 powershell_x86powershell_x86_Path(以及 64 位)变量提供到配置文件中,一切运行正常。

我可以做些什么来让构建代理自动找到 PowerShell?它在寻找什么/在哪里寻找它?也许“核心”有问题。

【问题讨论】:

  • 如果你在 buildAgent.properties 文件中添加相同的变量就可以了
  • 这就是我所做的(在文本中)。

标签: windows powershell teamcity


【解决方案1】:

查看http://svn.jetbrains.org/teamcity/plugins/powershell/trunk/powershell-agent/src/main/java/jetbrains/buildServer/powershell/agent/detect/PowerShellRegistry.java 的 PowerShell 插件的一些源代码,它提到了有关 PowerShell 检测逻辑的此页面:http://blogs.msdn.com/b/powershell/archive/2009/06/25/detection-logic-poweshell-installation.aspx。看看那个页面,它谈到了检查注册表。也许您缺少一些注册表项。

【讨论】:

    【解决方案2】:

    问题是,它需要 MicrosoftWindowsPowerShell (x64) 和 MicrosoftWindowsPowerShell-WOW64 (x86) (以及依赖项),否则它无法找到它。可能是 Windows 中的一些注册表映射位魔法。

    【讨论】:

    • 请详细说明。我不清楚如何修复检测。顺便说一句,我们访问补丁。
    • 我也不知道。如果进程检测到 64 位 PowerShell(仅),则该进程可能应该以 64 位运行。
    猜你喜欢
    • 2021-09-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-04-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多