Bitbucket cloud webhook Does not trigger Jenkins Build: No branch information

守給你的承諾、 提交于 2020-02-25 04:13:47

问题


I am trying to integrate Bitbucket cloud with Jenkins. I have Bitbucket plugin installed in Jenkins. I have configured the webhook in bitbucket cloud for the repository with url http://<jenkins_url>/bitbucket-hook/

I set up Jenkins job (I tried both pipeline and multibranch pipeline). In the Pipeline I have selected "Build when a change is pushed to BitBucket" and In the pipeline I have stages to fetch from bitbucket and build. I have specified to get from branch develop.

case 1: After I set this up I pushed some code to my repository(branch develop). I expected the pipeline to be triggered(since I have a webhook setup) nothing happens.
I triggered the build manually. It builds the project. Now if I push something to the repository, the build is getting triggered. Question here is Why didn't it triggered the first time and works only after a manual build.

case 2: I setup another pipeline. Exactly as the one before. But with branch as master. I tried to follow the same step(triggered manually first). Now when i pushed something to master. Nothing happens(even after manual build).

When I analysed the jenkins log. I see that there is a notification from bitbucket cloud as soon as something is pushed. But the json which is sent doesn't has branch information. May be that is the reason Jenkins is not able to decide which pipeline to trigger when there are multiple pipelines talking to same repository. Is my assumption correct? Is it a bug in Bitbucket cloud

The json recieved from bitbucket cloud looks like this

{
   "scm": "git",
   "website": null,
   "name": "myproject-api",
   "links": {
      "self": {
         "href": "https://api.bitbucket.org/2.0/repositories/my-team/myproject-api"
      },
      "html": {
         "href": "https://bitbucket.org/my-team/myproject-api"
      },
      "avatar": {
         "href": "https://bytebucket.org/ravatar/%7Bb07e7384-c622-44b1-8c5f-96104d36cfae%7D?ts=java"
      }
   },
   "project": {
      "key": "PB",
      "type": "project",
      "uuid": "{d9c0caa2-7d43-4a0e-8459-2c7c8c2bd287}",
      "links": {
         "self": {
            "href": "https://api.bitbucket.org/2.0/teams/my-team/projects/PB"
         },
         "html": {
            "href": "https://bitbucket.org/account/user/my-team/projects/PB"
         },
         "avatar": {
            "href": "https://bitbucket.org/account/user/my-team/projects/PB/avatar/32"
         }
      },
      "name": "MyProject Backend"
   },
   "full_name": "my-team/myproject-api",
   "owner": {
      "username": "my-team",
      "display_name": "my-team",
      "type": "team",
      "uuid": "{848f7612-ffbc-4dfb-8f67-ade4b604761c}",
      "links": {
         "self": {
            "href": "https://api.bitbucket.org/2.0/teams/%7B848f7612-ffbc-4dfb-8f67-ade4b604761c%7D"
         },
         "html": {
            "href": "https://bitbucket.org/%7B848f7612-ffbc-4dfb-8f67-ade4b604761c%7D/"
         },
         "avatar": {
            "href": "https://bitbucket.org/account/my-team/avatar/"
         }
      }
   },
   "type": "repository",
   "is_private": true,
   "uuid": "{b07e7384-c622-44b1-8c5f-96104d36cfae}"
}

Does anyone have any idea how to successfully get webhooks working with bitbucket cloud and Jenkins. Most of the questions on SO regarding this talks about Bitbucket server and not Bitbucket cloud.

来源:https://stackoverflow.com/questions/58564456/bitbucket-cloud-webhook-does-not-trigger-jenkins-build-no-branch-information

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!