2017-04-19 68 views
0

我们有一个Git Bitbacket存储库,有很多分支。我想创建一个作业,允许通过参数化作业从任何这些叉子运行代码。 我的用户案例是:有人点击Build with parameters,选择他/她的仓库叉子和分支,选择凭据(或者添加新的并选择),然后开始工作。詹金斯应该用他/她的凭证从他/她的分支中获得代码。Jenkins:如何在参数化作业中传递Git凭据?

我使用Git的插件和插件凭证。 I moved repository url and branch to parameters。 另外,我向证书插件添加了必要的证书。 Then I created Credentials parameter

但我不能让Git获取这个参数。我总是收到“身份验证失败”错误。 如何将选定的凭证绑定到Git插件?我应该在Credentials字段中选择什么来让Git从作业参数中获取这些声明?或者我应该做点别的?

回答

1

我不知道是否它是否可以进行参数的Git凭证都没有。即使你能做到这一点,这可能会暴露,如果你的詹金斯实例不SSL保护的Git的一个安全漏洞帐户(使用HTTPS 协议,而不是普通的HTTP )。

替代做法:

当你引用多个叉子,我以为他们只是一些主要主一个最终将与主合并的功能分支。

我想你也可以实现与配置构建任何分支在指定的Git仓库单詹金斯的工作你的目标。您需要配置一个单一用户的Git Plugin,或者您的团队成员之一,或者专门为Jenkins版本创建一个专用的Git Plugin。然后,在插件配置,您需要定义的一些属性如下:

  • 库 - >名称:起源
  • 库 - >的Refspec:留空
  • 分行建立:* * (这两个星号的关键之一)现在

,任何推到你的配置Git仓库内的任何分行将詹金斯被拾起注意配置Jenkins通知的存储库中的。

这种方法的优点是发展,建设周期是完全自动的。您还可以添加自动电子邮件通知。

注意这个答案是基于詹金斯版本1.6xx。

相关问题