TC 版本:TeamCity Enterprise 2017.1.4(内部版本 47070)
Linux 版本:Ubuntu 18.04.1 LTS(GNU/Linux 4.15.0-43-generic x86_64)
Powershell 核心版本:6.1.2
我在让 teamcity 构建代理识别它已安装 powershell 核心时遇到了一些麻烦。
我在我的用户账户下安装了代理。然后我在这里安装了 powershellhttps://github.com/PowerShell/PowerShell#get-powershell
团队城市服务器正确报告代理
然而我注意到它无法满足 powershell 请求
不兼容的运行器:PowerShell 未满足的要求:存在=>(powershell_x86|powershell_x64)存在
查看代理日志我得到这三行。
信息 - try.RegistryPowerShellDetector - 使用 RegistryPowerShellDetector 检测 PowerShell
信息 - try.RegistryPowerShellDetector - RegistryPowerShellDetector 仅适用于 Windows
信息 - agent.PowerShellServiceFactory - PowerShell 运行器已被禁用:未找到 PowerShell。
我是不是漏掉了什么?我重启了团队 cityagent,但还是没用
答案1
我们设法让 JetBrains 的官方开发人员修复了这个问题
按照此处的指示进行操作。
https://teamcity-support.jetbrains.com/hc/en-us/requests/1951317
答案2
(Microsoft 将 PowerShell.Core 的可执行文件名称从 powershell 更改为 pwsh),TeamCity 2017.1.4 无法检测到代理计算机上的 powershell。此问题已在 TeamCity 2017.2 中修复,请考虑升级到较新的 TeamCity 版本(当前版本为 2018.2.2)
我已将修复程序反向移植到 2017.1。要安装它,请将附加的 zip 文件放入 /plugins 中(无需解压)并重新启动服务器。重新启动后,请转到管理 -> 插件列表并验证 powershell 插件是否为外部插件且版本为 47176