我想在我的一个舞台上获得pom版本。为此我有这个管道脚本。我安装了Pipeline 实用程序步骤插件。
stage ('Publish Stage') {
steps {
pom = readMavenPom file: 'pom.xml'
echo pom.version
}
}
我对此有误,有人能说出我在做什么错误吗?
答案 0 :(得分:3)
你不能像这样在声明性管道中分配一个groovy变量。您只能在steps{}
块中运行步骤。如果将其包装在script{}
块中,它将起作用。如果您需要在其他地方使用变量,请注意不要在本地声明变量。
答案 1 :(得分:1)
编写步骤{}块并将其包装在脚本{}中是可行的,但就我而言,我只是在整个环境中使用了变量。
stage('Read Pom Version'){
pom = readMavenPom file: 'pom.xml'
env.POM_VERSION = pom.version
sh '''#!/bin/bash -xe
echo $POM_VERSION
'''.stripIndent()
}
假设我pom中的版本是1.0.0。在詹金斯舞台上面的照片如下:
1.0.0
echo 1.0.0