How to Trigger Jenkins Job from Slack

Jenkins job can be triggered in many ways using poll SCM, webhooks. Well, you can also trigger a Jenkins job from Slack as well.  We will be leveraging Slash commands feature from Slack.


Slash Commands allow users to invoke your app by typing a string into the message composer box.


Pre-requisites:
Make sure you have already created a channel in Slack.

Steps in Jenkins:

Create a Token for the build job you want to trigger from Slack
Go to Jenkins --> Click on the Job you would like to trigger from Slack --> Configure
Go to build triggers section.

We will be using the following URL to trigger builds from Slack
http://jenkins_dns_name/job/jobName/build?token=myToken

Allow anonymous read only access
Go to Manage Jenkins --> Configure Global security, click on Allow anonymous read only access.
Apply, Save.

Steps in Slack:

1. Go to the channel from where you would like to trigger builds.
2. Channel settings --> Click on Integrations --> Add an app



Type slash commands and add it

Click on view in app directory

Click on Add to Slack

Enter a command - single word something like /build (it should be one word no spaces or characters)

Click on Add Slash command integration
Enter Jenkins URL, like mentioned below:
http://jenkins_dns_name/job/jobName/build?token=myToken

Method as GET


and scroll down click on the check box like below

And click Save integration

Go to channel, enter the command as shown below:
/build

and press enter

Now your build job should run instantly in Jenkins.

Comments

Popular posts from this blog

Creating Amazon EKS cluster by eksctl

How to install Docker in Ubuntu 22.0.4

Setup build agent/slave VM and Integrate with Jenkins Master