2013年6月19日水曜日

Jenkinsを利用した自動化

Jenkinsを使ってユニットテストやビルドを自動化する手順について模索します。

(とりあえず書きなぐっているのでAndroidまで調べきれたら綺麗にしますのであしからず。。。)


1. 環境構築

1.1 プログラムのインストール

Homebrew(Mac OSXのフリーウェアパッケージツール)をインストール
http://mxcl.github.io/homebrew/index_ja.html  より
$ ruby -e "$(curl -fsSL https://raw.github.com/mxcl/homebrew/go)"

$ brew doctor   // インストールが上手く行ったか確認
$ brew update  // パッケージの更新
$ brew install git    // gitのインストール
$ brew install jenkins   // jenkinsのインストール
$ ln -sfv /usr/local/opt/jenkins/*.plist ~/Library/LaunchAgents
$ launchctl load ~/Library/LaunchAgents/homebrew.mxcl.jenkins.plist
  → Java SDKがない場合インストールが求められる
$ launchctl start homebrew.mxcl.jenkins
$ launchctl list|grep jenkins
10746 - homebrew.mxcl.jenkins  // PID, ステータス(0/143=停止  -=起動中)
Jenkinsを停止・削除する方法
$ launchctl stop jenkins
$ launchctl unload ~/Library/LaunchAgents/homebrew.mxcl.jenkins.plist

1.2 Jenkinsの設定

http://localhost:8080 にアクセス
Jenkinsの管理
       プラグインの管理 > 以下のプラグインを検索してインストール
           Xcode plugin, git plugin, android emulator plugin, multiple SCMs plugin
       システムの設定> インストール済みGit ボタンをクリック
                  > 名前(任意)  インストールディレクトリ(/usr/bin/git) > 保存

2. プロジェクトのビルド

2.1 iOSのビルド

新規ビルドを作成 > ジョブ名(例 Xcode)、フリースタイルプロジェクトのビルドにチェック
  [ローカルに保存したプロジェクトの場合] ソースコード管理 なし
      Target RecipeBook
      SDK    iphonesimulator6.1
      Configuration Release→ Debugに
      Xcode Project Directory /cocos/cocos2dx_recipe-master/projects/RecipeBook/proj.ios
      Xcode Project File      RecipeBook.xcodeproj
  [gitから取得する場合] ソースコード管理git
     リポジトリのURL(git@github.com:syuhari/cocos2dx_recipe.git)、ブランチ名(必要に応じて)を入力
     ビルド手順の追加>Xcode    build IPA?をチェック
     ビルド後の処理の追加 > 成果物の保存    build/**/*.ipa

トップ画面に今のジョブが表示される 一番右の「実行」アイコンをクリック

2.2 Androidのビルド

Jenkinsを使う前にコマンドラインの使い方を調べておく
$ cd proj.android/
$ ./build_native.sh clean  // クリーン(Errorとなるが成功はしている)
$ ./build_native.sh NDK_DEBUG=1
$ ant debug install -Dsdk.dir=/cocos/adt-bundle-mac-x86_64-20130522/sdk   // パッケージのインストール
$ ./ndkgdb.sh  // gdbの実行 ????