小编Ziv*_*v M的帖子

Jenkins文件,检查Globals变量是否存在

我有 jenkinsfile ,其中定义了超时全局变量

class Globals {
    static String TEST_TIMEOUT = ""
}
Run Code Online (Sandbox Code Playgroud)

我正在使用共享库中的函数,我正在使用全局变量来设置函数的超时。由于其他项目使用的共享库没有定义全局变量,因此我在函数文件中定义了环境变量,用作超时的默认值。

env.TESTS_TIME_OUT="10080"
Run Code Online (Sandbox Code Playgroud)

然后在函数中我想检查 Globals 变量是否存在,我想使用该值作为超时,如果不存在则使用默认值。

if(Globals.TEST_TIMEOUT){
   env.TESTS_TIME_OUT= "${Globals.TEST_TIMEOUT}"   
}
timeout(time: "${env.TESTS_TIME_OUT}", unit: 'MINUTES') {
.
.
.
}
Run Code Online (Sandbox Code Playgroud)

我之前已经成功完成了 env 参数,但这次出现错误

No such field found: field java.lang.Class TEST_TIMEOUT 
Run Code Online (Sandbox Code Playgroud)

有什么想法如何解决这个问题吗?或者还有其他方法来检查 Globals 变量是否存在?

谢谢

jenkins jenkins-plugins jenkins-groovy jenkins-pipeline

2
推荐指数
1
解决办法
4076
查看次数