Jenkins - 在多个阶段使用 def 变量
Jenkins - use def Variable in multiple stages
我在阶段中有一个 Jenkins 变量 BUILDVERSION_DATE,它的计算和格式正确。一切正常。
script {
def now = new Date();
def inOneHour = new Date(now.getTime() + 1 * 3600 * 1000);
println inOneHour.format("yyyy-MM-dd-HH-mm-ss", TimeZone.getTimeZone('UTC'))
def BUILDVERSION_DATE=inOneHour.format("yyyy-MM-dd-HH-mm-ss", TimeZone.getTimeZone('UTC'))
}
现在我想在多个阶段使用这个计算变量(没有代码重复)。
我试图将此代码放入 environment {...}
部分,但失败了。
如果它是静态变量,我知道我可以在环境段中定义它。
但是如何在多个阶段定义和使用这个计算变量呢?
谢谢!
如果您想将此值添加到名为 BUILDVERSION_DATE
的环境变量中,则可以将其分配给 Jenkins Pipeline 固有的 env
对象:
env.BUILDVERSION_DATE=inOneHour.format("yyyy-MM-dd-HH-mm-ss", TimeZone.getTimeZone('UTC'))
我在阶段中有一个 Jenkins 变量 BUILDVERSION_DATE,它的计算和格式正确。一切正常。
script {
def now = new Date();
def inOneHour = new Date(now.getTime() + 1 * 3600 * 1000);
println inOneHour.format("yyyy-MM-dd-HH-mm-ss", TimeZone.getTimeZone('UTC'))
def BUILDVERSION_DATE=inOneHour.format("yyyy-MM-dd-HH-mm-ss", TimeZone.getTimeZone('UTC'))
}
现在我想在多个阶段使用这个计算变量(没有代码重复)。
我试图将此代码放入 environment {...}
部分,但失败了。
如果它是静态变量,我知道我可以在环境段中定义它。 但是如何在多个阶段定义和使用这个计算变量呢? 谢谢!
如果您想将此值添加到名为 BUILDVERSION_DATE
的环境变量中,则可以将其分配给 Jenkins Pipeline 固有的 env
对象:
env.BUILDVERSION_DATE=inOneHour.format("yyyy-MM-dd-HH-mm-ss", TimeZone.getTimeZone('UTC'))