Jenkinsを使ってみる。

Android開発してみたい」と前回のエントリで呟きましたが、ただやるだけではつまらないのでCIツール「Jenkins」を使うことにしました。

そして今回Jenkinsを使うため「Track Lightning」というプロジェクト管理ツールを活用します。

Trac Lightning」はTrac,Subversion,Jenkins,Mavenなど数々のプロジェクトで採用されたツールをワンパックで提供し、
且つインストールと同時にそれらを自動連携してくれる非常に優れたプロジェクト管理ツールです。

とりあえず「セットアップ完了→サンプルをビルド→スケジューラで定期ビルドの設定」までの流れをざっと自分なりに覚書。


TracLightningをインストール

1:ここからダウンロードする。
  http://sourceforge.jp/projects/traclight/releases/

2:ダウンロードしたexeを実行。

3:コンポーネントの選択で二つのチェックを外さない。(今回の主目的はJenkinsなので)

↑チェックはつけたまま

4:後は次へ次へと進む。インストール完了を待つとDOS窓が開いて更にインストールが続くのでこれを待つ。

5:DOS窓が閉じ、TracLightningセットアップウィザードが完了したら再起動して終了。




TracLightningを起動してJenkinsのダッシュボードへ

1:全てのプログラムから「Trac」→「コマンドプロンプトから実行」を選択。
  するといくつかDOS窓が開き,Jenkinsなどがコンソールモードで起動する。

2:TracLightningデフォルトのサンプルプロジェクトへアクセスする
  http://localhost/trac/SampleProject

3:左列の下にある女性のアイコンを選択し「username:admin」「pass:admin」と入力。
  するとJenkinsのダッシュボードへ。



↑こんな画面



■Jenkinsでプロジェクトをビルドしてみる

 今回はサンプルプロジェクトをビルド。

 ダッシュボードのこの部分(ビュー)を操作する。
 

 1:一番右の時計と再生マークが合体してるアイコンをクリック。するとビルドが開始する。

 2:ダッシュボード左下のビルド実行状態を監視。「ビルド中」はその意味の通り。ビルド完了すると「待機中」へ。
  
  (ビルド経過はコンソール出力で追う事が出来ます。)


 3:ビルド結果のチェック

   ビュー左部「S(Status)」欄丸印の色が

     青→ビルド成功
     黄→ビルドは成功したがテストは失敗
     赤→ビルド失敗
   (上記ビュー画像S欄上から下)

   同時に最近行ったビルド結果の傾向を表す「W(Weather)」欄もチェック

     晴→最近のビルドは成功
    曇晴→最近のビルドは成功したり失敗したりで不安定
    雷雲→最近の全てのビルドが失敗
   (上記ビュー画像W欄上から下)

 4:ビルドが失敗した場合の原因調査

    コンソール出力があるのでそれを使用。

    1:左側の「ビルド履歴」から結果を参照したいビルドをクリック
    2:左側の「コンソール出力」をクリック
    3:コンソール出力が表示されます。




■スケジューラ

 ひとまず定期的にビルドさせてみる。
  1:ビュー中央「ジョブ」から定期ビルドさせたいジョブを選択
  2:左欄の「設定」を選択
  3:右側の「ビルド・トリガ」より「定期的に実行」にチェックを入れる。
  4:「スケジュール」欄に書式に従い希望のビルド間隔を記述。
    書式については右側「?」マークからヘルプを参考に。
  5:一番下の「保存」を選択し、完了。


■感想
 ごちゃごちゃと色々な設定をしなければならないのかと思いきや、シンプルでした。
 実際にAndroid開発で活用する場合更にプラグインを追加する必要がありそうですが
 今回はJenkinsのセットアップとテスト稼動という題目なのでこの辺で。

■参考サイト

Trac Lightning Wiki
http://sourceforge.jp/projects/traclight/wiki/FrontPage

退職

先日今まで勤めていた会社を退職しました。

これからもゲーム業界のようなエンターテインメントの世界でプログラマーとして働く予定ですが、まだ確定していません。

次が決まるまでの間、Android開発の勉強でもしてみようかな。

折角Xperia買ったんだし。

ゲームプログラマのためのC++ / Modern C++ Design

ゲームプログラマのためのC++

ゲームプログラマのためのC++

随分前に買ったはいいものの途中で止まっていたこの本、やっと読み終えました。
個人的な感想を言えば、テンプレート章にもう少し特殊化を使ったテクニックを載せたほうがいいのでは思ってしもうた。
が、参考文献に「Modern C++ Design」が載っていたのでそちらを参考にしてね、ってことなのでしょうね。

Modern C++ Design―ジェネリック・プログラミングおよびデザイン・パターンを利用するための究極のテンプレート活用術 (C++ In‐Depth Series)

Modern C++ Design―ジェネリック・プログラミングおよびデザイン・パターンを利用するための究極のテンプレート活用術 (C++ In‐Depth Series)

これがその本です。古い本ですが本当にオススメです。
テンプレートを使ったジェネリックプログラミングについて書かれています。
内容が濃く、これ一冊でその基礎と応用に触れることが出来て面白かったです。
(自分はここから得た知識を会社のソースで大爆発させたら、メンバーに怒られましたが(笑))

テンプレートだとboostのソース解析も面白いので会社でビルド中にちょくちょくやってます。(仕事しろ)

Android,iOSライセンス無料今日まで

近頃ちょこちょこ触り始めたunity

Android,iOSライセンス無料が今日までという事でアクティベーションしてみました。

一度アクティベーションしてしまえば、今日を過ぎてもずっとAndroid,iOSにアプリを流せるということでお得。


//[重要] 3Dゲームエンジン「Unity」の「iPhone」「Android」書き出し機能が、3日間だけ無料配布されてるぞ! みんな急げー!!!!
http://plus.appgiga.jp/masatolan/2012/04/05/15587/