gpt4 book ai didi

git - 如何设置 GoCD 来处理使用 SSH key 进行身份验证的私有(private) git 存储库?

转载 作者:太空狗 更新时间:2023-10-29 12:50:51 42 4
gpt4 key购买 nike

我有一个 git 存储库,它使用 SSH key 对用户进行身份验证,我想将该存储库用作 GoCD Material 。 GoCD 给我这个错误:

Error performing command: --- Command ---
git ls-remote ssh://git@server/repo.git refs/heads/master
--- Environment ---
{GIT_ALLOW_PROTOCOL=http:https:ssh:git:file:rsync}
--- INPUT ----

--OUTPUT ---

--- ERROR ---
STDERR: Host key verification failed.
STDERR: fatal: Could not read from remote repository.
STDERR:
STDERR: Please make sure you have the correct access rights
STDERR: and the repository exists.
---

有什么方法可以将 SSH key 添加到 GoCD?

最佳答案

在撰写此答案时,无法直接在 GoCD 中管理 SSH key 。要使其工作,您必须为 GoCD 服务器和所有代理生成 SSH key ,然后将它们添加到托管 git 存储库的服务器。您还可以将现有 key 复制到服务器和节点,但显然不推荐这样做。

例如,对于标准的 GoCD 服务器安装,您的系统中应该有“go”用户:

$ grep GoCD /etc/passwd
go:x:998:998:GoCD User:/var/go:/bin/bash

sudo 作为“go”用户并创建 key

$ sudo su - go
$ ssh-keygen
...
$ ssh [server]
The authenticity of host '[server] ([1.3.3.7])' can't be established.
ECDSA key fingerprint is SHA256:Rxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '[server]' (ECDSA) to the list of known hosts.
Permission denied (publickey,keyboard-interactive).

最后一步很重要,因为如果你没有成功,GoCD 会给你同样的错误。

现在将您的 key 添加到 git 服务器并单击 GoCD 中的“检查连接”。它应该打印“连接正常”。

为运行代理的每个节点和用户生成 key 。

关于git - 如何设置 GoCD 来处理使用 SSH key 进行身份验证的私有(private) git 存储库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43171897/

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