我想将steps
和post
包装在一个函数中。
这很好:
pipeline {
agent any
stages {
stage('Test') {
steps {
whateverFunction()
}
post {
sh 'echo test'
}
}
}
}
void whateverFunction() {
sh 'ls /'
}
但是,一旦我打包步骤并将其发布到我的函数中,它将不起作用。 (失败,错误:steps in a stage must be in a ‘steps’ block.
)
pipeline {
agent any
stages {
stage('Test') {
whateverFunction()
}
}
}
void whateverFunction() {
steps {
sh 'echo test'
}
post {
sh 'echo test'
}
}
我还尝试过拥有steps
,然后在其中包含steps
的那一步中调用我的函数。基本上使steps
中的steps
变形,导致没有执行任何步骤的行为。 (但显然这将是有效的詹金斯文件)
是否可以有一个在舞台内包含steps
和post
的函数。还是有办法实现类似的功能?