hag*_*its 2 jenkins-groovy jenkins-pipeline
我知道我可以有一个关于 jenkins 管道(声明性)的环境部分。像这样:
stage('Name') {
environment {
NAME = value
}
steps {
script {
Do something using these env vars
}
}
}
Run Code Online (Sandbox Code Playgroud)
我想编写一个 groovy 函数,定义一些环境变量,运行一些东西,并从几个管道中调用它。就像是:
def function () {
environment {
NAME = value
}
sh "do something using these env vars"
}
Run Code Online (Sandbox Code Playgroud)
有可能吗?
(我知道我可以写,sh "ENV=value; some CMD"但我的变量很少,而且可读性较差)。
是的,你可以这样做。Jenkins Pipeline 将其环境变量存储在名为ENV. 因此,您可以向此映射添加其他键值对以获取其他环境变量。这将通过以下方式以 Groovy 语法完成:
// syntax option one
env.key = value
// syntax option two
env['key'] = value
Run Code Online (Sandbox Code Playgroud)
对于您的示例,这看起来像:
def function () {
env.NAME = value
sh "do something using these env vars"
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
10051 次 |
| 最近记录: |