なんかできたよー。

Web系Tipsを適当につづるBlog.

JenkinsでGithubのWebHookを使って自動テストする。

### Jenkinsに「Jenkins GIT plugin」が導入済
### Jenkinsユーザーの公開鍵がGithubに登録されていることが前提です。
### また、その他必要なプラグインなどは各自揃えて下さい。

===============================

### テスト対象として一つ前の記事
JenkinsでPHPUnitを実行するだけのためのbuild.xml (Apache Ant)。」を使います。

Github サンプルコード

===============================

### Jenkinsで「新規ジョブ作成」を作成します。

  • ・「ジョブ名」
  • ・「フリースタイル・プロジェクトのビルド」を選択します。


f:id:tuki0918:20140127000353p:plain


===============================

### 「ジョブの設定」を編集します。

  1. 「Git」を選択して
  2. Repository URLに「GithubリポジトリのURL」を入力します。

f:id:tuki0918:20140127000851p:plain

===============================

  • ・「ビルド・トリガ」
  1. 「SCMをポーリング」を選択します。
  • ・「ビルド環境」
  1. 任意で「Color ANSI Console Output」を選択します。
  2. ※ AnsiColorプラグイン(コンソール出力の文字色変更)
  • ・「ビルド」
  1. 「Antの呼び出し」を選択して「使用するAnt」を選びます。
  • ・「保存」する

f:id:tuki0918:20140127001430p:plain


===============================

### GithubリポジトリのWebHook設定

Githubリポジトリの[Settings] => [Service Hooks] => [Jenkins (Git plugin)]

  • ・「Jenkins Url」を入力(以下参照)します。
  • ・「Active」を選択します。
  • ・「Update settings」を選択します。

f:id:tuki0918:20140127004117p:plain

# Jenkins Basic認証なし
http://hostname.com/git/notifyCommit?url=git@github.com:tuki0918/jenkins_phpunit.git

# Jenkins Basic認証あり
http://username:password@hostname.com/git/notifyCommit?url=git@github.com:tuki0918/jenkins_phpunit.git


===============================

### Jenkinsに通知テスト

  • ・「Test Hook」を選択します。
  • ・Jenkins側でテストが実行されていれば成功です。

f:id:tuki0918:20140127073922p:plain
f:id:tuki0918:20140127003527p:plain


===============================

### GithubにPushしてみる

  • Githubに「Push」します。
  • ・Jenkins側でテストが実行されていれば成功です。


お疲れ様でした。


===============================

### はまりポイント

  • ・build時にコマンドがないよーって言われることがある。
  • [Jenkinsの管理] => [ステムの設定] => [グローバル プロパティ]にパスを設定してあげるといけた模様。

f:id:tuki0918:20140127004435p:plain

キー:PATH
値 :${PATH}:/usr/local/bin