2015年7月30日木曜日

JenkinsでSSH経由でGitサーバーを参照する

sshで認証するGitサーバーがあり、 また別のマシンのJenkinsからそのプロジェクトを継続的に参照してビルドしたい場合の設定

クライアント(Jenkins)側

$ sudo -u jenkins -H ssh-keygen -t rsa -C jenkins@クライアントホスト

(パスワードは空)

/var/lib/jenkins/.ssh/id_rsa.pub という公開鍵ファイルができる

サーバー側

Gitをホスティングしているサーバーへ、SSHログイン。

$ vi ~/.ssh/authorized_keys

で、先程つくったid_rsa.pub の中身をコピペして追加する。

再びクライアント側


$ git -c core.askpass=true ls-remote -h サーバーユーザー@サーバーホスト:プロジェクトパス.git HEAD

で、 エラーが出なかったらうまくいっている。