Reputation: 6666
I want to use the Slack Notification Plugin in my pipelines, which is very easy:
slackSend color: 'danger', message: 'Everything broke'
However, I don't want the build to break if slackSend doesn't exist. Is there a way to check that first?
Upvotes: 6
Views: 1960
Reputation: 7880
You could always use the old try/catch to make sure your build doesn't fail on this step :
def resultBefore = currentBuild.result
try {
slackSend color: 'danger', message: 'Everything broke'
} catch(err) {
currentBuild.result = resultBefore
}
However, I don't really see why slackSend
command would not exist ? It can fail (e.g. if your Slack server is down) but as long as you have Slack Notification Plugin
installed it should exist !
Upvotes: 1
Reputation: 171084
You might be able to wrap it in a conditional, though I'm not sure how Jenkins adds stuff to the scripts...
if(this.respondsTo('slackSend')) {
slackSend color: 'danger', message: 'Everything broke'
}
Upvotes: 1