Jenkins + DeployGate(2) -DeployGateにアプリをアップ!-
公開日: :
最終更新日:2014/04/19 Android, CI, DeployGate, IT, Jenkins
TestFlightのことは忘れて最近はDeployGateっています。
今回は前回書けなかったJenkins + DeployGateのお話。
これまでのお話
Jenkins + DeployGate(1) -DeployGateでAndroidアプリ開発-
Jenkinsからアップするまでの流れ
いちいちEclipseでapkファイルを生成してDeployGateにブラウザからアップロードするのは面倒ですよね。
そこらへんは自動で!ということで、Jenkinsに任せてみることにしました。
環境用意
私のJenkins環境
- Windows(Xen)で動作
- Jenkins ver.1.506
Jenkins環境に以下をインストールしパスを通しておきます。
- Android SDKのインストール
- android.batに対してパスを通しておきます。
- Antのインストール
- curlのインストール
Jenkinsの各種設定
以下の2つの設定は省略します。
1. ソースコード管理システムの設定
2. ビルドトリガの設定
上記設定が出来ている段階として、以下を追加で設定します。
3. ビルド手順を追加×3つ
(1) build.xmlの生成
まず1つ目のビルド手順を追加します。
最初にantに必要なbuild.xmlを生成します。
call android update project -p ¥Sample -t android-10
- pは生成するapkファイルの名前になるので適切な名前に変えてください。
- tはターゲットとなるAndroidのバージョンになります。
どこをターゲットにするかは、android listでチェックして適切なバージョンを選んでください。
(2) apkファイルの生成
2つ目のビルド手順では、antを使ってapkファイルを生成します。
call ant -f Sample clean debug
まず既存のファイルをcleanしてから、DeployGateにアップする用(デバック用)のapkファイルを生成します。
上記が動作すれば、binフォルダが出来てSample-debug.apkファイルが出来ます。
※署名済みのapkを生成する場合はまた別途作業が必要です。
(3) DeployGateにファイルのアップロード
最後のビルド手順として、DeployGateの「Push API」を使ってファイルをアップロードします。
ログインした状態で以下のページを見れば、詳しい詳細が載っています。
- https://deploygate.com/docs/api
cd ¥Sample¥bin curl.exe -F "file=@Sample-debug.apk" -F "token=[あなたのAPI key]" -F "message=アップロード時のメッセージ" https://deploygate.com/api/users/[アップロードする所有者のユーザ名]/apps
以上で、Jenkinsの設定は完了です。
この状況ですと、コミットされるとDeployGateに最新版がアップロードされます。
まだ改良する点はありますが、これである程度使える状態になっています。
蛇足
アップロードするタイミングについて
DeployGateは履歴をある程度保持できます。
※最初は2つでチュートリアルをクリアすると5つまでアップします。
プロジェクトの方針や保持できる履歴数にもよると思いますが、ソースがコミットされるたびに、ファイルをアップロードするのはちょっと履歴の無駄遣いかもしれません。
そこで、Jekinsのプロジェクトとして以下の2つに分けるというのも手かもしれません。
- (1)と(2)はコミットされるたびにおこなう
- (3)は1日に1回おこなう(+手動)
プラグインについて
DeployGateのJenkinsプラグインがあるよ!と言われたのですが、見つけてインストールしたのはこちら
お・・おぅ?
ちょっと調べてみると、公式ではなく(好意で)作っていただいたものみたいですね。
DeployGateについて – ほげほげ(仮)
DeployGatePluginを作ってみました。 #androidadvent2012 – 夢を見る石
広告
関連記事
-
iPhoneアプリ開発 -端末がネットワークにつながっているかどうか知りたい-
* やりたいこと アプリがネットに繋がっていなければアラートボックスを表示させたい。 ネットに繋
-
CakePHP1.3にSmartyを導入
いい加減、CakePHP(1.3)にもSmartyを導入することにしました。 * ダウンロード
-
iPhoneアプリ開発 −フォントの変更−
一言:最近、iPhoneアプリの開発のためMacばかり触ってて、Windowsに戻ると混乱します。
-
iPhoneアプリ開発 -同じ画像を2度以上画像処理した際に起こるエラーの対処-
* 起きた現象 (1) UIImageのデータを元にピクセルの値を色々といじって画像処理。 (2)
-
カレログ騒動で考えたライフログのこと
今回、カレログというAndroidアプリが話題になり騒動になってます。 というわけで、ふとカレログ
-
Twitterでサービスにログイン -ソーシャルログイン-
* やりたいこと -自身のWebサービスにTwitterIDでログイン(ソーシャルログイン)したい。
-
研究室での進捗報告の方法について、ふと思ったこと
* 以下に加筆・修正して移動しました。
-
Jenkins+Capistranoを設定した時にしたこと -「ポート変更」「公開鍵認証」対応-
* 前段階 上記にあるように、Jenkins+Capistranoの設定をしています。 ただし、設
-
アプリのためにFacebookページ作成 -現時点で注意すべき点-
* 前回 会社のメルアドでFacebookページを作成する方法を載せました。 * Faceboo
-
CakePHP1.3でスマートフォン対応
CakePHP1.3でスマートフォン対応のためにやったことをメモしておきます。 * 環境 -