In this post, I would like to discuss the implementation of Jenkins Continuous Integration automatic build triggers. Where Jenkins master will be stay connected with the GitHub server with an API token based authentication. To connect with GitHub server we need a personal access token.
Webhook for GitHub and Jenkins integration |
- Create token credentials
- GitHub server configuration
Webhook is a wonderful solution that will keep track of changes that made to the GitHub repo and notify the Jenkins Master. If we create the item or freestyle project will be triggered automatically.
Create token credentials
Login into the Jenkins console, Click on the left pane - "Manage jenkins" link. Select the "System Configure" navigates to the new page where you need scroll down till you found the GitHub section.First we will create the token, look for the "Advanced" button on the rightside. Additional actions: 'Convert login and password to token'.
Select the radio button: "From login and password" which prompt for entering the values for the Login, password that used for GitHub where you have repo. Then use the 'Create token creentials' button at the right end.
Create Token for GitHub on Jenkins |
- Your GitHub profile used for connecting
- API URL don't change this
- Credentials select from the dropdown, where you can find the recently created Token for GitHub - Selected
- Click on the Test connection button will produce the result of connectivity
- Tick mark the 'manage hooks'
GitHub Server configuration on Jenkins |
GitHub Configuration for Webhook
The following simple steps will be enables you to get the webhook on the GitHub that connected to Jenkins Master- Log in to your GitHub
- The top right corner you can find your profile link from that menu select 'Settings'.
- In the left pane at the bottom, Select the 'Developer Settings'
- The new page for 'Developer Settings' will have three options, Select 'Personal access tokens' from the menu.
Personal access tokens on GitHub |
Now we all set to go for testing the Webhook connectivity with Jenkins
Create a freestyle project for Webhook
On the Jenkins console create new freestyle project
Name it as GitHub-webhook
Project type: Freestyle project
Click on Ok button
Jenkins Project for GitHub Webhook |
Source Code Management
Select the Git
Jenkins Source Code management |
Build Triggers
Select GitHub hook trigger for GITScm pollingJenkins Build Trigger |
Select the Execute shell
enter the stuff to know that build triggered in my example used the cat the README.md file which is targeted to modify.
Jenkins build section for CI automation |
Save the Jenkins Project.
Modify the code in the Git repository,
added a line in the README.md file |
Automatic Build Triggers
In the Jenkins now the job will be triggered automatically
Jenkins Build automatic triggered and the console output |
Here is the conclusion that Webhook is simple mechanism that will helps Jenkins get notified with code changed in the GitHub.
No comments:
Post a Comment