Skip to content

Instantly share code, notes, and snippets.

@paul-yamamoto
Created October 11, 2012 03:03
Show Gist options
  • Star 2 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save paul-yamamoto/3869923 to your computer and use it in GitHub Desktop.
Save paul-yamamoto/3869923 to your computer and use it in GitHub Desktop.
GitHubプライベートリポジトリをJenkinsからチェックアウトする。
(「GitHubプライベートリポジトリ」と書きましたが、SSH鍵認証でGITを運用してる場合も同じだと思います。)
プライベートリポジトリの場合、SSH鍵認証での接続になると思いますが、Jenkins管理画面にはその設定(鍵の登録)項目がありません。
そこで、Jenkins実行サーバのJenkins実行ユーザにSSHの設定をする必要があります。
1. Jenkins実行サーバにてJenkinsユーザになり、SSHキーを生成する。`ssh-keygen -t rsa`
2. 生成した公開鍵をGithubアカウント管理画面で登録する。
3. Jenkins実行サーバにてJenkinsユーザになり、SSHでgithubに接続する `ssh github.com`
上記でjenkinsからgithubのプライベートリポジトリをチェックアウトできるようになります。
もちろん、他の方法でSSHキーを生成して、JenkinsユーザのHOME/.ssh に登録しても良いのですが、その場合gitコマンドに秘密鍵ファイルを指定する方法がないので、~/.ssh/config ファイルを作る必要があります。
~/.ssh/config
>Host github.com
> HostName github.com
> IdentityFile ~/.ssh/github.key
> User github@gmail.com
上記ファイルを作りましたら `git clone` などが実行できるかJenkinsユーザで確認しましょう。
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment