我正在使用脚本管道,并试图将我的舞台内的函数如下。
node{
if(value=="true")
{
def func(){
stage ('first stage')
}
}
fun() #calling it here.
}
它不工作。它说这里不需要方法定义
这里不需要方法定义。请在下面定义方法
。如何做到这一点?当管道在特定节点上运行时,不可能定义外部节点块。
不执行舞台,您可以从函数返回舞台配置。请参考以下内容。
node {
stage('Stage 1') {
echo "This stage executed always"
}
def value = true
// Lets execute stage 2
if(value == true) {
generateStage("Stage 2").call()
}
stage('Stage3') {
echo "Stage 3"
}
}
def generateStage(name) {
return {
stage("Stage ${name}") {
echo "Stage ${name}"
}
}
}