2017-04-02 13 views
2

SSH鍵でユーザーを認証するgitリポジトリがあり、そのリポジトリをGoCDの資料として使用したいと考えています。 GoCDは私にこのエラーを与えます:認証にSSH鍵を使用するプライベートgitリポジトリを扱うためのGoCDの設定方法を教えてください。

Error performing command: --- Command --- 
git ls-remote ssh://[email protected]/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. 
--- 

私はGoCDにSSHキーを追加する方法はありますか?

答えて

1

この回答を書いている時点では、GoCDのSSH鍵を直接管理することはできません。それを動作させるには、GoCDサーバとすべてのエージェント用のSSH鍵を生成し、gitリポジトリをホストしているサーバにSSH鍵を追加する必要があります。既存の鍵をサーバの&ノードにコピーすることもできますが、それは明らかに推奨されていません。 「行く」ユーザーとして

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

にsudoとキー

$ 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サーバーのインストールに使用しているシステムで「行く」のユーザーを持つ必要があります。例えば

、最後のステップは重要です。なぜなら、あなたがそれを作っていなければ、GoCDはあなたに同じエラーを与えるからです。

gitサーバーにキーを追加し、GoCDで[接続を確認]をクリックします。 "Connection OK"と表示されます。

各ノードとエージェントを実行するユーザーのキーを生成します。

関連する問題