【備忘録】JenkinsとGitHubの連携設定
まず,GitHubにJenkinsからアクセス出来るようにする必要があります
そのためにssh接続に関する設定を行う必要があります.
最初にJenkinsディレクトリに移動してください
ディレクトリの場所は
Jenkinsの管理>システムの設定 のホームディレクトリ から確認することが出来ます.
ホームディレクトリに移動し,ssh認証用の公開鍵と秘密鍵の作成を行います.$ cd ****/****/.jenkins
$ sudo mkdir .ssh
$ sudo ssh-keygen -t rsa
ssh-keygenを実行すると,パスフレーズの入力を求めれますが全てEnterで問題ありません.これで鍵の生成は完了です.
次に生成した鍵をGitHub側に繋げる必要があります.
GitHubにログインして,setting>SSH and GPG keys を開いてください.
New SSH Keyを開き,titleは各自入力し,Keyに生成した公開鍵を入力します.入力する公開鍵は以下のコマンドで確認出来ます.macの方はpbcopyコマンド,Windowsの方はclipコマンドを使用してください.$ pbcopy < ~/.ssh/id_rsa.pub
$ clip < ~/.ssh/id_rsa.pub
コピーした公開鍵をkeyに入力しAdd ssh Keyを押せば,GitHubにssh接続できる環境が整いました.接続確認コマンドを実行します.$ ssh -T git@github.com
Hi username! You've successfully authenticated, but GitHub does not provide shell access.
but GitHub does not provide shell access.と出てきますが,接続自体出来ているので気にしなくてOKです.
これでsshの接続が完了です.
2. Jenkinsのビルド設定
GitHubにssh接続が出来るようになったら,JenkinsからsshでGitHubに接続出来るように設定します.ダッシュボードから新規のジョブ作成をします .任意のジョブ名を入力し,フリースタイル・プロジェクトのビルド を選択してください.
次に,ソースコードの管理を選択し,リポジトリURLと認証情報の入力を行います.
リポジトリURLにはgit@github.com:****1/****2.gitの形式で入力してください.****1にはGitHubのユーザー名,****2にはリポジトリ名を入力してください.
そして,認証情報では種類でSSHユーザ名と秘密鍵を選択し,秘密鍵の直接入力を行います.秘密鍵のコピーは先ほどと同様以下のコマンドを使用してください.$ pbcopy < ~/.ssh/id_rsa.pub
$ clip < ~/.ssh/id_rsa.pub
ここまで設定が出来たら一度ビルドを実行し,エラーが出なければJenkinsとGitHubの接続は完了になります!