当前位置: 首页 > 面试题库 >

Jenkins / Hudson环境变量

堵茂勋
2023-03-14
问题内容

我正在从jenkins$PATH设置用户权限的用户那里运行Jenkins ,当我进入Jenkins Web界面时,在“ 系统属性”
窗口(http://$host/systemInfo)中看到了一个不同的$PATH

我已经使用Jenkins网站上的本地rpm在Centos上安装了Jenkins。我正在使用安装随附的启动脚本sudo /etc/init.d/jenkins start

谁能告诉我为什么会这样?


问题答案:

迈克尔

两件事情:

当詹金斯连接到计算机时,它将连接到sh外壳,而不是bash外壳(至少这是我注意到的-我可能错了)。因此,不会考虑您对bashrc文件中的$
PATH所做的任何更改。

另外,您在本地Shell中对$ PATH所做的任何更改(您个人ssh所进行的更改)都不会在Jenkins中显示。

要更改Jenkins使用的路径,您有两个选择(AFAIK):

1)编辑/etc/profile文件并在其中添加所需的路径

2)进入从站的配置页面,并添加环境变量PATH,其值为:$PATH:/followed-by/paths/you/want/to/add

如果使用第二个选项,则系统信息仍不会显示,但是您的构建将看到添加的路径。



 类似资料:
  • 问题内容: 在Jenkins作业的预构建步骤中,我有两个脚本,第一个是perl脚本,第二个是使用groovy插件的系统groovy脚本。我需要第二个Groovy脚本中的第一个Perl脚本中的信息。我认为最好的方法是设置一些环境变量,并且想知道如何实现。 或其他更好的方法。 谢谢你的时间。 问题答案: 在构建步骤之间传播环境变量的方法是通过EnvInject插件。 但是,就您而言,仅在一个构建步骤中

  • 问题内容: Jenkins(管理jenkins->系统信息)下的环境变量从何而来? 我检查了/etc/init.d/tomcat5,/ usr / bin / dtomcat5,/ usr / bin / tomcat5,/ etc / sysconfig / tomcat5和/ etc / profile,但在那里没有看到任何此类变量,特别是与Oracle相关的变量(Base,Home,Ld_l

  • 问题内容: 我正在将Jenkins与Testswarm和此插件一起使用(派生资源)。 我想为Testswarm获取一个“工作名称”,其中包含詹金斯的工作名称,内部版本号和svn修订版号。 将JOB_NAME放在配置字段中无济于事,该变量不会被其值替换。 因此,我修改了插件源代码以获取Jenkins环境变量,但我得到的只是“空”变量。 这是罪魁祸首代码。(在第205行的src / main / ja

  • 问题内容: 在詹金斯(Jenkins)的工作中,我正在执行预构建中的一些操作,例如执行Shell脚本。通过使用Jenkins插件“ EnvInject”,我想将环境变量注入到我的Maven构建(单元测试)中,以便可以在Java单元测试中使用这些变量。在shell脚本中,即时消息执行类似以下操作: 在构建Jenkins时,输出以下内容: 但是“ ip”变量在我的Java代码(单元测试)中不可用。当我

  • 在Jenkins的工作中,我正在执行驻留在预步骤构建中的几个操作,例如执行外壳脚本。使用Jenkins插件EnvInject,我想将环境变量注入到我的maven构建(单元测试)中,以便在我的Java单元测试中使用。在外壳脚本IM做类似的事情: 在构建Jenkins时,输出以下内容: 但是“ip”变量在我的Java代码(单元测试)中不可用。当我完整打印两个我没有看到登记的“ip”。 我是否需要为ma

  • 问题内容: 我正在尝试在Jenkins中使用DSL管道。我认为如果可以将项目名称用作脚本的一部分,那就太好了。 我得到错误: 我以为我遵循了这些指示,并且将其作为变量之一。 我决定尝试: 在我的DSL中,结果显示为: 这是我所期望的。 另一个博客提到: 使用环境变量 我们有两种方法来获取它们的价值。在启动过程中传递的属性,由于Groovy与Java的紧密联系,我们可以理解为。 以Java方式读取普