我正在拼命地尝试为我的所有管道重构一个 post 块。我想在每次管道执行后推送一个松弛通知。一个管道的代码如下所示:
@Library('prixan-shared-library')
import groovy.json.JsonSlurperClassic
def esJson
pipeline {
agent any
stages {
stage('Check cluster health') {
// do some stuff
}
stage('Check number of elastic results') {
// do even more stuff
}
}
post {
unstable {
slackSend(color: 'warning', message: "${env.JOB_NAME} - #${env.BUILD_NUMBER} Build unstable - (<${env.BUILD_URL}|Open>)")
}
regression {
slackSend(color: 'danger', message: "${env.JOB_NAME} - #${env.BUILD_NUMBER} Regression - (<${env.BUILD_URL}|Open>)")
}
fixed {
slackSend(color: 'good', message: "${env.JOB_NAME} - #${env.BUILD_NUMBER} Back to normal - (<${env.BUILD_URL}|Open>)")
}
}
}
我可以轻松地创建要调用的自定义函数或要在 step 块中执行的自定义块,但似乎不可能在 customPost 函数中重构整个 post 块 => 我的自定义块不被接受为管道子项。
WorkflowScript: 42: Undefined section "customPost" @ line 42, column 5.
customPost {
有人知道这是否可行吗?
谢谢