在jenkins master中修改PATH变量

use*_*058 33 jenkins

我正在尝试修改jenkins主节点中的PATH(我没有奴隶).从"全局属性 - >环境变量"我添加了两个条目:"PATH",其值为"$ PATH:/ opt/foo"和"FOO"值"BAR".现在,当我运行我的自由样式作业时,执行shell构建步骤为"echo $ PATH; echo $ FOO",我看到PATH未被修改,因此FOO正确显示.这是为什么?有没有办法从jenkins全局配置修改PATH?我设法通过EnvInject插件修改作业级别的PATH,但我真正想要的是修改所有作业的PATH.

sti*_*sti 43

你做得对.相同的Manage Jenkins => Global Properties => Environment变量适合我.

请注意,如果安装了EnvInject插件,它似乎会掩盖Jenkins全局配置中的环境变量.所以卸载EnvInject然后再试一次.

  • 我确实安装了EnvInject插件,所以你可能会干扰env属性全局jenkins设置.我将在星期一试一试. (3认同)
  • 非常感谢你我花了4个小时试图弄清楚什么是错的!这是EnvInject插件. (2认同)
  • 检查您的更改如何影响 `/systemInfo` (2认同)

s1m*_*m0t 11

在安装了自制软件的 Mac OS X 上运行 Jenkins 2.150.1。我无法PATH通过更新PATH环境变量来改变环境,如此处和类似问题的其他一些答案中所述。最后我更新了 Jenkins 安装的 plist。我添加了以下内容/usr/local/Cellar/jenkins-lts/2.150.1/homebrew.mxcl.jenkins-lts.plist

<key>EnvironmentVariables</key>
<dict>
  <key>PATH</key>
  <string>/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin</string>
</dict>
Run Code Online (Sandbox Code Playgroud)

然后重新启动服务:

brew services restart jenkins-lts
Run Code Online (Sandbox Code Playgroud)


CJC*_*ink 9

Jenkins还支持将格式PATH+<name>添加到任何变量,而不仅仅是PATH:

詹金斯变量+符号

管道步骤也支持这一点withEnv:

node {
  withEnv(['PATH+JAVA=/path/to/java/bin']) {
    ...
  }
}
Run Code Online (Sandbox Code Playgroud)

请注意,它适用于变量.如果必须附加,则需要执行其他答案显示的操作.

请参阅此处的管道步骤文档.

您也可以使用语法PATH + WHATEVER =/something来预先添加$ PATH

或者这里的 EnvVars上的java文档.


San*_*ani 8

我面临着同样的问题,因为詹金斯大师没有使用我的wsimport命令。这是Java附带的,因此我想将JAVA_HOME / bin附加到jenkins master中的PATH变量中。

环境名称应为Path,而不是PATH。请参阅附带的图片,其中我将JAVA_HOME / bin修改为PATH变量 在此处输入图片说明


归档时间:

查看次数:

56691 次

最近记录:

6 年,8 月 前