当前位置: 首页 > 知识库问答 >
问题:

访问 Jenkins 作业 DSL 中的ENV_INJECT变量

洪琦
2023-03-14

我无法访问JobDSL的groovy脚本中的任何Jenkins环境变量。我可以看到系统环境变量的值。

这是我正在运行的Groovy脚本:

< code > println(system . getenv(" HOME "))println(system . getenv(" WORKSPACE "))

这是输出:

/用户/s051464 null

我试过使用环境注入设置环境变量,但这也不起作用(所有设置变量都为空)。

共有1个答案

逄学潞
2023-03-14

您应该能够使用${VAR_NAME},更多信息请点击此处。一个例外是特定于节点的变量,如WORKSPACE,在这些情况下,您需要执行以下操作(从这里开始):

 hudson.FilePath workspace = hudson.model.Executor.currentExecutor().getCurrentWorkspace()
 类似资料:
  • 我试图使用Jenkins DSL groovy来创建Jenkins工作。我对Git参数使用的方法,很少有参数无法识别,并出现以下错误。 方法:javaposse.jobdsl.dsl.helpers.gitParamContext.SelectedValue()的签名不适用于参数类型:(java.lang.String)值:[NONE] 方法:javaposse.jobdsl.dsl.helper

  • 我正在编写一个Groovy脚本,其中包含部署terraform的作业。我正在使用作业DSL并使种子作业由JCasC实现,一切正常。然后我有一个包含作业的Groovy文件的存储库。 如果我将Groovy文件保持为单个作业,它就可以正常工作。 然而,我希望能够构建具有构建阶段的管道。我知道我可以把管道写在詹金斯文件中 我有这个作为开始: 但是,我看到了这个错误: 我已经尝试了各种方法,并阅读了一堆文档

  • 我正在为maven类型的Jenkins作业编写DSL脚本。 https://jenkinsci.github.io/job-dsl-plugin/#path/mavenJob-性质 在上面链接的帮助下,我编写了几乎所有的DSL脚本,但找不到“构建和构建设置”步骤部分的DSL脚本(用于maven类型的作业)。 请帮助我如何在DSL脚本中提到上述两个步骤。

  • 我正在使用jenkins job DSL插件创建一个jenkins pipeline作业来播种作业。如何获得DSL文件中的工作空间路径?詹金斯管道代码是这样的: 失败的 DSL 代码是: 出现错误: 在管道区域中创建的变量在作业DSL步骤中不可访问

  • 我对 jenkins (2.74) 在归档 maven 项目中的工件时究竟在做什么有点困惑。从日志中可以看出,jenkins 正在自动存档项目中的工件,而无需指定生成后操作。工件文件确实在

  • 我想使用REST API访问不同服务器上Jenkins作业控制台输出的变量。我如何存档这个。Jenkins作业在服务器A上运行,我想读取或获取服务器B上的所有变量。服务器A和服务器B之间没有连接。