gpt4 book ai didi

git - 为 Github 私有(private)存储库验证 Jenkins CI

转载 作者:IT王子 更新时间:2023-10-29 01:20:12 26 4
gpt4 key购买 nike

我希望 Jenkins 能够自动从我托管在 Github 上的私有(private)存储库中获取数据。但我不知道如何完成该任务。尝试了文档,为 jenkins 用户生成了 ssh-key,我所看到的只是:“无法克隆 repo”。我检查了 URL - 它们是有效的。

任何线索,也许您知道一些描述此类内容的文档/博客/任何东西?

最佳答案

可能是GitHub对deploy keys的支持是你要找的吗?引用该页面:

When should I use a deploy key?

Simple, when you have a server that needs pull access to a single private repo. This key is attached directly to the repository instead of to a personal user account.

如果这就是您已经在尝试的方法并且它不起作用,您可能希望使用所使用的 URL 的更多详细信息、 key 文件的名称和位置等来更新您的问题。


现在是技术部分:如何在 Jenkins 中使用 SSH key ?

如果您有一个 jenkins unix 用户,您可以将部署 key 存储在 ~/.ssh/id_rsa 中。当 Jenkins 尝试通过 ssh 克隆 repo 时,它将尝试使用该 key 。

在某些设置中,您不能以自己的用户帐户运行 Jenkins,也可能不能使用默认的 ssh key 位置 ~/.ssh/id_rsa。在这种情况下,您可以在不同的位置创建 key ,例如~/.ssh/deploy_key,并配置 ssh 以将其与 ~/.ssh/config 中的条目一起使用:

Host github-deploy-myproject
HostName github.com
User git
IdentityFile ~/.ssh/deploy_key
IdentitiesOnly yes

因为您使用 git@github.com 对所有 Github 存储库进行身份验证并且您不希望上述 key 用于您与 Github 的所有连接,我们创建了一个主机别名 github-部署-我的项目。您的克隆 URL 现在变成了

git clone github-deploy-myproject:myuser/myproject

这也是您将存储库 URL 放入 Jenkins 中的内容。

(请注意,您不能ssh:// 放在前面,这样才能正常工作。)

关于git - 为 Github 私有(private)存储库验证 Jenkins CI,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5212304/

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