Webhooks如何让詹金斯让BRANCH_NAME上传它

时间:2018-05-28 16:00:08

标签: jenkins bitbucket jenkins-plugins webhooks bitbucket-pipelines

我有一个案例:我想加载最后一次提交的分支,我的意思是接下来,在我的bitbucked repo中我有很多分支,并且在开发人员添加他的push commit [branch-1] webhooks后发送给Jenkins证书和更新的分支名称。那么,我的Jenkins bitbucket插件应该如何从收到的webhook中获取分支名称?

Jenkins job settings

Bitbucket webhooks settings

1 个答案:

答案 0 :(得分:0)

您必须使用Pipeline获取被触发的分支的详细信息 您需要记住几件事情,您将获得整个Payload,您必须从中解析JSON Get payload parameters in Jenkins

完成上述步骤后,将其添加到PipeLine

 def object =  new JsonSlurper().parseText("$payload")
    // reading the JSON to see if branch is master or any other
    String refs= new JsonBuilder("$object.ref" ).toPrettyString()
    println "$refs"
    String[] arrBranch =refs.split("/")
    String branch =arrBranch[2]
    println "$branch"
    if (branch=="master")
        echo "deploy to PROD"
    else 
    echo "deploy to staging"