How do I schedule a Jenkins compile/build job only when there is a new commit to my source code ?

0 votes
I am using Git as a version control tool. While integrating it with jenkins,I need to schedule a build only when there is a new commit made in my Github repository. What is the way i could do it?
May 29 in Jenkins by Sam
• 290 points
34 views

1 answer to this question.

Your answer

Your name to display (optional):
Privacy: Your email address will only be used for sending these notifications.
0 votes

To automatically run build on code commit, follow these steps:

  1. Configuring Jenkins:
    Jenkins listens for POST requests at a Hook URL. We need to give this URL to the repository on GitHub. Then, whenever code is pushed to that repository, GitHub will send a POST request to the Hook URL and Jenkins will run the build.

    • To get the Hook URL of Jenkins, Open the Jenkins Dashboard.

    • Go to: Manage Jenkins > Configure System

    • Under GitHub Plugin Configuration, Click on ‘Advanced' tab.

    • Check 'Specify another hook url' for GitHub configuration.

    • A textbox will appear with a hook URL. This is the Hook URL at which Jenkins will listen for POST requests. Copy this URL and go to the next step.

  2. Configuring GitHub Repository:
    We now have to provide the Hook URL we got from Jenkins in the previous step.

    • Open your repository on GitHub.

    • Click ‘Settings’ on the navigation bar on the right-hand side of the screen.

    • Click ‘Webhooks ’ on the navigation bar on the left-hand side of the screen.

    • Click ‘Add webhook’ to add the webhook.

    • Paste the URL you copied in the previous step as the ‘Payload URL’.

    • You can select the events for which you want the Jenkins build to be triggered. We will select ‘Just the push event’ because we want to run the build when we push our code to the repository.

    • Click ‘Add webhook’.

    • You should now see the webhook you just added in the list of Webhooks for that repository.

  3. Configuring Jenkins Project : We now have Jenkins configured to run builds automatically when code is pushed to central repositories. However, Jenkins doesn’t run all builds for all projects. To specify which project builds need to run, we have to modify the project configuration.

    • In Jenkins, go to the project configuration of the project for which you want to run an automated build.

    • In the ‘Build Triggers’ section, select 'Github hook trigger for GITScm Polling'.

    • Save your project.

Jenkins will now run the build whenever you push/commit your code to the GitHub repository.

answered May 29 by Sirajul
• 940 points

Related Questions In Jenkins

0 votes
1 answer

How do I pass value from my Fake # script to the host build server (Jenkins)

You can use the EnvInject plugin to pass environment ...READ MORE

answered Jul 11, 2018 in Jenkins by Kalgi
• 2,620 points
51 views
0 votes
1 answer

I’m facing a login error when I try to run Jenkins on Docker. How do I solve this?

You have to open the /var/log/jenkins/jenkins.log file to ...READ MORE

answered Jul 24, 2018 in Jenkins by Sophie may
• 9,330 points
115 views
+1 vote
4 answers
0 votes
1 answer

How do I secure my jenkins build?

Hey @Farah, follow these steps: Ensure global security ...READ MORE

answered Feb 12 in Jenkins by Imran
22 views
+13 votes
2 answers
0 votes
1 answer
+1 vote
1 answer

Is there a way to restrict permissions to a user per individual job in jenkins?

Yes, you can configure user permissions per ...READ MORE

answered May 28 in Jenkins by Sirajul
• 940 points

edited May 28 by Sirajul 32 views

© 2018 Brain4ce Education Solutions Pvt. Ltd. All rights Reserved.
"PMP®","PMI®", "PMI-ACP®" and "PMBOK®" are registered marks of the Project Management Institute, Inc. MongoDB®, Mongo and the leaf logo are the registered trademarks of MongoDB, Inc.