gpt4 book ai didi

github - 如何使用 Jenkins checkout 多个私有(private) Github 存储库

转载 作者:行者123 更新时间:2023-12-04 16:55:06 30 4
gpt4 key购买 nike

我对 Jenkins 和私有(private) Github 存储库有一个小问题。
要查看私有(private) repo ,通常需要以下两件事之一:

  • 该 repo 上用户的 SSH 私钥
  • 该仓库的已注册“部署 key ”的 SSH 私钥

  • 部署 key 是为这种交互而制作的。问题是部署 key 在项目中必须是唯一的,所以我每次都必须使用不同的 key 。
    这意味着我必须为 Jenkins 用户为每个额外的 repo 添加另一个 key 到 ssh-agent。
    这也意味着默认情况下,代理会尝试所有可用的 key ,并且可能会在使用错误 key 进行几次错误尝试后断开连接。

    Jenkins git 插件似乎不允许将其指向 SSH key 。
    Jenkins 在结帐前不允许任何命令行交互,所以我不能使用任何 bash 技巧来设置正确的 key 。

    到目前为止,唯一的解决方案似乎是:
  • 在 github
  • 中创建一个“my_jenkins_account”用户
  • 为用户添加公钥
  • 将帐户添加到我想使用 Jenkins checkout 的仓库
  • 将用户的私钥添加到jenkins用户

  • 有什么替代建议吗?

    最佳答案

    这并不完全是一个答案,只是黑暗中的一个回声,让你知道我做了几乎同样的事情。

  • 以名为 jenkins 的用户身份运行 Jenkins
  • sudo作为该用户并创建一个公共(public) ssh key
  • 创建一个名为 myorg-machines 的免费 G​​itHub 帐户
  • 添加此 jenkins用户到 myorg-machines 的公共(public) ssh key GitHub 上的帐户 key 。我将此键命名为 jenkins on server.name.com使事情井井有条。
  • 创建一个名为 Machines - Pull only 的 GitHub 团队.添加 myorg-machines该团队的 GitHub 用户,并授予该团队对我适当的私有(private)存储库的拉取访问权限。

  • 我同意这看起来很笨拙,但现在一年多来实际上很容易管理。

    关于github - 如何使用 Jenkins checkout 多个私有(private) Github 存储库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8824725/

    30 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com