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 – 夢を見る石
広告
関連記事
-
Selenium2.0でUIテスト(2) -Rubyでやってみよう-
前回は、Selenium + PHPを試しました。 今後はRubyでやってみようということでSele
-
str_padとsprintfの速度
PHPで同じことが出来る「str_pad」と「sprintf」。 今まではsprintfを使う機会
-
Jenkins + iPhoneアプリ(2) -ローカルリポジトリにあるデータからipaファイル生成-
* これまで - * 最終目標 -(開発者)git(リモートリポジトリ)にソースをコミット
-
jQuery Mobile導入手順 -はじめの一歩-
jQuery Mobileの1.0がリリースされ、利用したい方が増えていると思います。 最初に何を
-
ヘルプ作成で思ったWebサービスの3つの心得 -短文の教え-
最近ヘルプを作って思った3つのこと。 * 1文に複数の内容を書かない 1文に複数の内容を書いてい
-
iPhoneアプリ開発 芳名帳アプリ作成(5) -ペンサイズと入力エリア数の設定-
* 今までの流れ - -[http://pplace.jp/2013/06/1531/:titl
-
Androidアプリ開発 -画像処理をC言語で高速化-
* 画像を扱う際の問題(1):計算処理の遅さ 前回、セピア画像にする方法を書きました。
-
CakePHP1.3でテストコード(2) -フィクスチャをいじってみる(テストデータの動的登録)-
cakePHP1.3でのSimpleTestを使ったテストケースの第2回目。 今回は、動的にテストデ
-
iPhoneアプリ開発 -利用するべきサービス-
iPhone(iOS)アプリ開発において使っているサービスを列挙。 この手のサービスがないと、開発中
-
研究室での進捗報告の方法について、ふと思ったこと
* 以下に加筆・修正して移動しました。