同じボックスにあるGitoliteサーバーに接続するために、Jenkinsのユーザーを追加しようとしています(ただし、ローカルユーザーは同じ問題を起こすと思います)。
- Jenkins の SSH キーを生成しました。
- Gitolite の設定に公開鍵を追加しました。
- Jenkins を使用して、localhost サーバーで SSH に接続できます。
- SSH を使用して Gitolite に接続しています
たとえば、次のように動作します。
sudo su jenkins
ssh localhost
しかし、以下は機能しません:
sudo su - jenkins
git clone jenkins@localhost:my-repo
いつも言ってる
空のリポジトリのクローンを作成したようです
しかし、以下は機能します:
sudo su - jenkins
git clone gitolite@localhost:my-repo
うまくいかない理由がわかったと思いますが、代替手段があるかどうか知りたいです。
gitolite の .ssh フォルダー内に、「コマンド」とジェンキンスの公開鍵を含むauthorized_keys ファイルがあります。これは、gitolite を使用するように正しいシェルを設定するためだと思います。ただし、Jenkins の ~/.ssh フォルダー内には、authorized_keys もあります。
ユーザー「jenkins」を使用してgitoliteに接続しようとすると、gitoliteリポジトリの代わりにjenkinsの「ホーム」が使用されるため、Jenkinsのホーム内のリポジトリを見つけようとしていると思います。
Jenkins (Gitolite サーバーと同じボックスにあります) を使用して、この問題なく gitolite に接続する方法はありますか?