Git 如何将Bitbucket正确连接到Jenkins
从现在开始大约一周,Bitbucket不会(?)向我的Jenkins服务器发送请求 我把一切都安排成这样:Git 如何将Bitbucket正确连接到Jenkins,git,jenkins,continuous-integration,bitbucket,Git,Jenkins,Continuous Integration,Bitbucket,从现在开始大约一周,Bitbucket不会(?)向我的Jenkins服务器发送请求 我把一切都安排成这样: 端点http://username:apitoken@jenkinshost/ username=詹金斯中的用户名 apitoken=连接到Jenkins中用户名的apitoken jenkinshost=我运行Jenkins的主机 项目名称是一个项目 令牌:我可以在每个项目配置中设置的令牌 我是根据这个网站做的:。 它确实起作用了,但不再起作用了。Bitbucket改变了什么吗?我怎样才
端点
http://username:apitoken@jenkinshost/
username
=詹金斯中的用户名apitoken
=连接到Jenkins中用户名的apitokenjenkinshost
=我运行Jenkins的主机
项目名称
是一个项目令牌
:我可以在每个项目配置中设置的令牌
我是根据这个网站做的:。它确实起作用了,但不再起作用了。Bitbucket改变了什么吗?我怎样才能解决这个问题
我不熟悉这个插件,但是我们非常成功地将Bitbucket和Jenkins一起使用,但是我们对更改进行轮询,而不是从Bitbucket推送更改(因为我们的构建服务器隐藏在公司防火墙后面)。如果当前方法仍然存在问题,则此方法可能适用于您
上的本文档详细介绍了如何通过SSH在构建服务器和Bitbucket之间进行通信。完成后,在已安装的情况下,转到构建配置并在源代码管理下选择“Git”,然后输入存储库的ssh URL作为存储库URL。最后,在Build Triggers部分,选择Poll SCM并将轮询频率设置为您需要的任何频率。通过迭代,我了解到端点中的令牌字段和令牌可以相同。因此,我将它们设置为与用户令牌相同,并且可以正常工作!还要检查用户是否具有进行作业的权限 无论如何,您可以检查access.log,看看Bitbucket是否尝试过
另外,还有一个链接。也许有一天它会变得更有用。我刚刚能够使用Bitbucket中的Hooks选项,通过以下步骤(类似于链接)成功地触发提交时的构建:
端点不需要在URL中插入基本HTTP auth,尽管使用了身份验证,但我没有使用模块名称字段,并且输入的项目名称区分大小写,包括测试用例中的空格。构建并不总是立即触发,而是相对较快。另一件事,您可能会考虑禁用“防止跨站点请求伪造漏洞”选项,因为在启用该选项时,我已经经历了来自现有集成的各种API难题。 < p>我有类似的问题,直到我找到它为止。以下是集成的完整列表:
ssh-keygen-t rsa
ssh-Tgit@bitbucket.org
git克隆git@bitbucket.org:username/repo_name.git
**End point**: username:usertoken@jenkins_domain_or_ip
**Project name**: is the name of job you created on Jenkins
**Token**: Is the authorization token you added in the above steps in your Jenkins' job/project
Recommendation: I usually add the usertoken as the authorization Token (in both Jenkins Auth Token job configuration and Bitbucket hooks), making them one variable to ease things on myself.
为了在新提交后构建回购,请使用 只有一件事需要注意: 当创建一个POST钩子(注意它是POST钩子,而不是Jenkins钩子)时,URL在最后有一个“/”时工作。比如:
URL: JENKINS_URL/bitbucket-hook/
e.g. someAddress:8080/bitbucket-hook/
不要忘记检查作业配置中的“更改推送到Bitbucket时生成”。我遇到了这个问题,问题是我用CamelCase命名了我的存储库。Bitbucket会自动将存储库的URL更改为全小写,并在webhook中发送给Jenkins。然后,Jenkins搜索具有匹配存储库的项目。如果您像我一样,在项目配置中的存储库URL中有CamelCase,您将能够签出代码,但是webhook请求上的模式匹配将失败
只需将您的repo URL更改为全小写而不是CamelCase,模式匹配就会找到您的项目。是的,我知道这个解决方案,但我正在明确寻找设置此插件的方法。@andrewdotnich关于所有可能的方法。最后,我像robjohncox(下面)所说的那样做了,检查差异。这很有效,但我不喜欢投票部分。我只想在我提交时立即重建…你能添加更多关于它如何不工作的细节吗?你得到了什么错误消息(如果有的话?)詹金斯日志中有什么吗?它工作了,从某个时候起就不再工作了。我没有收到错误消息,因为此请求应该从Bitbucket主机发送到我的服务器。[sarcasm]不幸的是,我没有Bitbucket应用程序的root访问权限[/sarcasm]。我可能误解了你的问题,如果是这样的话,请告诉我:)另外:当我尝试自己做请求时,通过将web浏览器指向我的端点,它确实起作用。这意味着在我的理解中,Bitbucket做错了什么,或者什么也没做。你可以试试Bitb