詹金斯比特桶集成

Jenkins bitbucket integration

我正在尝试将 Bitbucket 与 Jenkins 集成。我不想使用网络挂钩,因此我在 Jenkins 中使用 SCM 轮询选项。

GIT 插件需要一个 bitbucket URL,我已经提供了我的 bitbucket 主项目 URL。我正在使用 SSH 进行身份验证。

我的jenkins服务器有一台slave机器,所以我在slave机器上为企业服务用户创建了一个SSH密钥对。我已经在用户的 bitbucket 帐户设置中给出了 public 密钥,并在 jenkins 中给出了私钥。

但是当我进入存储库时收到以下错误消息 URL:

Failed to connect to repositoriy : java.lang.IllegalStateException: Cannot open session, connection is not authenticated.

我是不是做错了什么?

Jenkins 需要定义的凭据才能连接到 SSH git URL。您需要定义一组新的凭据(带有私钥的 SSH 类型)并将私钥直接粘贴到 Jenkins UI 或将 jenkins 指向 Jenkins 上的私钥位置大师。 然后 - 在定义 repo URL 之后,您需要从下拉列表中选择正确的凭据。这应该可以解决您的连接问题。

Jenkins 使用 jGit 作为 git 客户端,所以它在服务器中寻找私钥,而不是在从机中,jGit 就是这样工作的.命令行 Git 将在 /user/.ssh 下查找从站中的密钥。在 Bitbucket 中添加了 Jenkins master 的 public 密钥并且它有效