我有一个bitbucket repo,发送webhook来触发jenkins工作。
?的http://:8080 / buildByToken / buildWithParameters作业= webhook_me&安培;标记=吨 我想用webhook发送bitbucket分支名称, 所以我在网上搜索在比特桶上使用环境变量的正确方法,我发现这个网站:
所以我用"& branch = $ BITBUCKET_BRANCH"编辑了网址。最后,但它不会起作用。
任何想法,我应该怎么做才能发送带有分支名称的webhook?
******* ******* EDIT
我看到有一种叫做Bitbucket事件的有效载荷。 这是一个json,其中包含有关webhook的所有详细信息: https://confluence.atlassian.com/bitbucket/event-payloads-740262817.html
但我无法找到如何使用它并从jenkins中提取数据的方法。
我认为,这是解决这个问题的方法,但我不知道如何使用它。
答案 0 :(得分:1)
我找到了办法,它对我有用。 你需要使用bitbucket插件:Bitbucket Plugin
然后在作业内部,您需要指定在推送后将触发作业的分支并检查标记的复选框:
然后在bitbucket上创建一个带有以下URL的webhook: http://:/bitbucket-hook/同样如此:
然后把东西推到这个存储库和那个分支,然后你去! 如果你试图推动到另一个分支,这项工作将不会被触犯
答案 1 :(得分:0)
$ BITBUCKET_BRANCH仅在Jenkins工作中可用。你只是简单地将文本" $ BITBUCKET_BRANCH作为"分支"参数。你不能传递这样的环境变量。
$ BITBUCKET_BRANCH可能只是在作业中可用,具体取决于Jenkins的版本和您正在使用的作业类型。在管道工作中,这很容易访问(如果你有正确版本的东西)。除非你试图给它一些其他分支,否则你不需要传递它。在这种情况下,您需要查看是否可以在bitbucket端获取分支以传递给Jenkins。
答案 2 :(得分:0)
您是否尝试使用类似jenkins的变量$ {BITBUCKET_BRANCH}而不是$ BITBUCKET_BRANCH,这是更像shell的变量?