Jenkins poll scm with bitbucket builds everytime and not on changes


I have jenkins job setup for bitbucket and i have setup SCM poll option in jenkins

I excpected that jenkins will poll Bitbucket and if it detects any change than only it will build but seems like its building everytime it polls no matter change is there or not ?

Am i missing something ?

I see a webhook trigger for bitbucket which notifies jenkins when checkin happens but i dont have public IP for jenkins server as it is  on internal network

so would like jenkins to poll bitbucket and build only if there is a change






1 answer

Hey Mehul,

Are you using Bitbucket Cloud or Bitbucket Server? 

You mentioned that you don't have a public IP for Jenkins. If you're using Bitbucket Cloud, then this means that your Jenkins server can't be reached over the internet and there's no way for an external service like Bitbucket to notify Jenkins of changes. In this scenario, you would either need to resort to polling, or make Jenkins publicly available. If necessary, you could limit the range of IP addresses able to connect to Jenkins, using the article What are the Bitbucket Cloud IP addresses I should use to configure my corporate firewall to know which IP addresses to allow.

If you're using Bitbucket Server, then presumably this should be on your local network so you can set up an add-on such as Jenkins for Bitbucket Server to handle triggering Jenkins.

One last thing, you mentioned that Jenkins seems to be building every time, regardless of whether new changes are detected. I've done a little research and according to JENKINS-20767, this can be an issue when using the bundled jgit executable rather than a native git binary. The above Jenkins JIRA issue also lists a few other possible causes around build configuration that could cause this to occur.



Suggest an answer

Log in or Sign up to answer
Community showcase
Published Mar 14, 2019 in Bitbucket Pipelines

Building a Bitbucket Pipe as a casual coder :  #!/bin/bash source "$(dirname "$0")/" enable_debug extra_args="" if [[ "${DEBUG}" == "true" ]]; then extra_args="--verbose" fi # mandatory variables R...

274 views 0 12
Read article

Atlassian User Groups

Connect with like-minded Atlassian users at free events near you!

Find a group

Connect with like-minded Atlassian users at free events near you!

Find my local user group

Unfortunately there are no AUG chapters near you at the moment.

Start an AUG

You're one step closer to meeting fellow Atlassian users at your local meet up. Learn more about AUGs

Groups near you