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

Jenkins Pipeline访问环境变量

龙佐
2023-03-14
问题内容

我正在尝试在Jenkins中使用DSL管道。我认为如果可以将项目名称用作脚本的一部分,那就太好了。

git credentialsId: 'ffffffff-ffff-ffff-ffff-ffffffffffffff',\
url: "${repo_root}/${JOB_NAME}.git"

我得到错误:

groovy.lang.MissingPropertyException: \
No such property: JOB_NAME for class: groovy.lang.Binding

我以为我遵循了这些指示,并且将其JOB_NAME作为变量之一。

我决定尝试:

sh 'env'

在我的DSL中,结果显示为:

JOB_NAME = foo-bar

这是我所期望的。

另一个博客提到:

使用环境变量

我们有两种方法来获取它们的价值。-D=在启动过程中传递的属性,System.getProperty("key")由于Groovy与Java的紧密联系,我们可以理解为。

以Java方式读取普通环境变量是System.getenv("VARIABLE")

让我们尝试一下:

println "JOB_NAME = " + System.getenv('JOB_NAME');

现在,我得到:

java.lang.NullPointerException: Cannot get property 'System' on null object

空对象?但是,我可以看到这JOB_NAME是一个环境变量!

如何$JOB_NAME在管道作业中将DSL脚本读入。我正在尝试管道作业,当我得到该工作时,将使它成为具有的多分支管道Jenkinsfile


问题答案:

所有的环境变量使用访问env,如${env.JOB_NAME}



 类似资料:
  • 问题内容: Jenkins参数区分大小写吗?我有一个参数化的构建,需要在构建之前设置一个名为“ build_parameter”的蚂蚁参数。当我尝试访问Jenkins设置的$ {BUILD_NUMBER}时,我得到了为ant参数设置的值。如果构建参数不区分大小写,那么有人可以建议我解决此问题吗?我无法更改构建参数名称,因为必须更改构建脚本(这不是一个选择)。谢谢! 问题答案: 为了回答您的第一个问

  • 问题内容: 我设置了要在我的Python应用程序中访问的环境变量。我如何获得它的价值? 问题答案: 通过访问环境变量 或者,你可以使用以下命令查看所有环境变量的列表: 有时你可能需要查看完整的列表! Windows上的Python默认安装为。如果要在运行python时查找,可以执行以下操作:

  • 问题内容: 有谁知道如何在Java中访问标准Shell环境的环境变量?我正在使用ProcessBuilder类,并且必须指定正在运行的Shell脚本中使用的特定环境变量,这些变量存在于标准Shell环境中。 访问ProcessBuilder环境不起作用。 问题答案: 您可以通过以下方法获取创建程序时存在的环境变量: http://download.oracle.com/javase/tutoria

  • 使用 Java API 访问环境变量和系统属性: System.getProperty("prop"); System.getenv("HOME");

  • 我必须从我的 Groovy 脚本访问一个环境变量。我没有使用詹金斯。如何获取变量?

  • 只是想知道,我可以在谷歌应用程序引擎中访问环境变量吗?例如,我存储了一封电子邮件和密码,并希望按如下方式访问它: 有什么办法可以做到这一点吗?