JenkinsとGitの連携についてハマったのでメモ。
※事前準備 gitのインストール
# gitのインストール
yum install git
[ダッシュボード] >> [Jenkinsの管理] >> [Global Tool Configuration]を開く。
[Gitの追加]を押し、↓の項目を入力する。
・名前: 任意の名前を入力する。
・Git実行形式へのパス: インストールしたgitへのパスを入力する。
SSH接続の手順
①Jenkins実行ユーザに切り替えて、.sshディレクトリへ移動する。
# Jenkins実行ユーザに切り替える
su - jenkins
cd /var/lib/jenkins/.ssh
※もしJenkins実行ユーザがいない場合は作成する。
またJenkinsユーザにログインできない場合はログインできるようにする。
# ログイン可能にする
usermod -s /bin/bash jenkins
②公開鍵/秘密鍵を作成する。
# 公開鍵/秘密鍵を作成する id_rsa, id_rsa.pubが作成されること
ssh-keygen -t rsa -b 4096
# 公開鍵をGithubに登録する
GitHubのページを開き右上のアイコンから↓の画面を開く
[Settings] >> [SSH and GPG keys] >> [New SSH key]ボタンから作成した公開鍵(id_rsa.pub)を登録する
# 接続確認
ssh -T git@github.com
※Hi username! You've successfully ~~ の文が表示されたら成功
③GitHubからFetchしたプロジェクトを置くディレクトリを作成する
# GitHubからFetchしたプロジェクトを置くディレクトリを作成する
mkdir /var/lib/jenkins/ssh_project
④Jenkinsのジョブの[ソースコード管理]でGithubの情報を入力する。
・認証情報: ①,②の設定を行った場合は、入力不要
・ブランチ指定子: 対象のブランチを指定する
・追加処理: [Check out to sub-direcory]を選択し、③で作成したディレクトリを入力する
⑤ジョブの実行を行い、GitHubからプロジェクトをFetchできているか確認する。