AndroidアプリテストのためのJenkins設定 2

前回の続きです。今回は以下のステップのうち「2. Jenkins共通設定」の内容を記述します。

1. 実行環境の設定
Jenkinsを実行させるためのマシン環境の設定です。

2. Jenkins共通設定 (←今回)
Jenkinsの実行全般に関わる設定です。

3. プロジェクト毎の設定
Jenkinsに登録した各プロジェクトの固有の設定です。

2. Jenkins共通設定

2.1 プラグインのインストール
Jenkinsへアクセスします。
http://localhost:8080
(または、https://:8080/)

トップ画面の左端にあるメニュー「Jenkinsの管理」から、「プラグインの管理」→「利用可能」タブと辿り、下記のプラグインをイントールします。

  • Git Plugin
  • Android Emulator Plugin
  • Jenkins Multiple SCMs plugin

「インストール完了後、ジョブがなければJenkinsを再起動する」にチェックを入れ、再起動させます。
(ちなみに、ブラウザのアドレスバーに「http://localhost:8080/safeRestart」と打ち込んで実行することでも、Jenkinsの再起動ができます。)

2.2 ユーザ登録と権限設定
トップ画面の「Jenkinsの管理」から、「グローバルセキュリティの設定」→「セキュリティを有効化」にチェック→「アクセス制御」-「ユーザー情報」へと辿ります。「Jenkinsのユーザーデータベース」を選択して、「ユーザーにサインアップを許可」のチェックをはずします。

「管理者権限」→「行列による権限設定(プロジェクト単位) 」を選択します。

最後に「CSRF対策」にチェックを入れ、「Default Crumb Issuer」を選択します。

適用した後、Jenkinsのトップ画面へ行くとサインアップ画面が表示されるので、ユーザー情報としてすべての項目を入力します。

2.3 環境変数等の項目設定

グローバル プロパティ
トップ画面の「Jenkinsの管理」から、「システムの設定」→「グローバル プロパティ」と辿り、「環境変数」にチェックを入れます。
追加ボタンをクリックし、「キーと値のリスト」に以下を設定します。

キー: ANDROID_HOME
値: /var/lib/jenkins/android-sdk-linux

Android
Android」の設定項目「Android SDK root」に以下を入力します。

Android SDK root: ${ANDROID_HOME}

JDK
「インストール済みJDK」のエリアの「JDK追加」ボタンをクリックし、「自動インストール」のチェックをはずして以下を設定します。

名前: JDK
JAVA_HOME: /usr/java/default

Git
以下の項目を設定します。なお、gitそのものがマシンへインストールされていない場合は、インストールを済ませておきます。(CentOSへのgitのインストール手順は検索すれば沢山出てきますので、その手順については割愛させて頂きます。)

Name: Default
Path to Git executable: /usr/bin/git

Ant
「インストール済みAnt」のエリアの「Ant追加」ボタンをクリックし、「自動インストール」のチェックをはずして以下を設定します。

名前: Ant
ANT_HOME: /etc/alternatives/anthome

Git plugin
以下を設定します。

Global Config user.name Value: jenkins
Global Config user.email Value: jenkins@jenkins-server


2.4 sshの設定
jenkinsユーザがBitbucketにアクセス出来るように設定します。そのためには、以下のコマンドにて鍵を生成し、Bitbucketに公開鍵の内容を登録します。(何か聞いてきたらメッセージ内容を確認して、Enterを押して進めます)

sudo -u jenkins ssh-keygen

鍵(id_rsaとid_rsa.pub)が生成されていることを確認します。

ls -la /var/lib/jenkins/.ssh

bitbucket.orgにアクセスし、アカウント管理から「SSHキー」を選択し、「鍵を追加」をクリックします。ラベルには任意の名前を設定し、「キー」の欄にid_rsa.pubの内容を貼り付けます。(catコマンドなどで表示してコピー・ペースト)

cat /var/lib/jenkins/.ssh/id_rsa.pub

この時点で、公開鍵を作成した作業環境から一旦bitbucket.orgにアセクスします。それによりサイト認証(.ssh/known_hostファイル生成)をすることができます。途中何か聞いてきたらメッセージを確認して「yes」で進めます。

sudo -u jenkins git clone git@bitbucket.org:Kyakujin/repo_sampleproject.git /var/lib/jenkins/tmp

(「git@bitbucket.org:Kyakujin/repo_sampleproject.git」の部分は、各自で登録したリポジトリURLを指定します。)


以上で、「2. Jenkins共通設定」の内容は終わりです。次回は最後のステップ「3. プロジェクト毎の設定」の内容を記述します。