Jenkins + DeployGate(2) -DeployGateにアプリをアップ!-

公開日: : 最終更新日:2014/04/19 Android, CI, DeployGate, IT, Jenkins


DeployGateを使ってますか? 継続的にDeployってますか?

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を生成します。
スクリーンショット 2013-03-25 16.33.25

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プラグインがあるよ!と言われたのですが、見つけてインストールしたのはこちら
スクリーンショット 2013-03-25 16.14.58
お・・おぅ?

ちょっと調べてみると、公式ではなく(好意で)作っていただいたものみたいですね。
DeployGateについて – ほげほげ(仮)
DeployGatePluginを作ってみました。 #androidadvent2012 – 夢を見る石

広告

関連記事

no image

Androidアプリ開発 -ギャラリーから選んだ画像のサムネイルを取得-

* やりたいこと +ボタンをクリックしてギャラリーを表示。 +ギャラリーで画像を選んだら、その画像の

記事を読む

no image

MySQLのバックアップ手順 -消えたら困るものはバックアップ-

そろそろデータが消えてもらったら困るぐらいになっていたのでバックアップをとることにしました。 とい

記事を読む

構成

定期的にデータ取得のためにCakePHP1.3でシェル機能を利用

定期的にデータを取得する行為をするために、はじめてシェル機能を使ってみたのでメモ。 * ス

記事を読む

iPhoneアプリ開発 芳名帳アプリ作成(5) -ペンサイズと入力エリア数の設定-

* 今までの流れ - -[http://pplace.jp/2013/06/1531/:titl

記事を読む

no image

CakePHPのモデルのキャッシュではまった -新しく追加したカラムに値が入らない-

タイトルのとおり、ちょこっとCakePHPではまったのでメモ。 * 作業内容 -MySQLで、ある

記事を読む

no image

jQuery Mobileの1.0Beta3、1.0RC1で起きた現象 -iOS5で動かない!?-

最近おきたjQuery Mobile周りについてのメモ。 本来なら色々チェックしてちゃんと原因を調

記事を読む

no image

jQueryMobileでタッチ(スワイプ)してページ遷移 -Paginationプラグインの利用-

スマートフォン対応をしていてタッチしてページ遷移させたいケースがあるかと思います。 そんな時に便利

記事を読む

no image

iPhoneアプリ開発 -WebViewで表示しているページで特定のリンククリック時の動作を変える-

* やりたいこと UIWebViewでWebページを表示し、特定のリンクをクリックした際には別処理を

記事を読む

no image

iPhoneアプリ開発 -UIScrollViewで画像を拡大・縮小-

* やりたいこと UIScrollViewでピンチアウト・インして上に乗っている画像を拡大・縮小した

記事を読む

no image

CAPTCHAの導入方法 -KCAPTCHAの導入-

CakePHP(1.2、1.3)にKCAPTCHAを導入してみたのでメモ。 * CAPTCHA

記事を読む

広告

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

広告

no image
[感想] Effective Objective-C 2.0 ☆☆☆☆★(4.5)

* 構成 - 第1章 Objective-Cに慣れる -

no image
[感想] iOSアプリテスト自動化入門 ☆☆☆(3.0)

* 構成 - Chapter 1 テスト自動化への取り組み

DeployGateを試してみた(iOS編) -DeployGateがiOSに対応-

今までのDeployGate - -[http://pplace.

iPhone/iPadアプリを開発するためにやったこと

今までに、iPhoneを3本ほどリリース((リリースしたアプリは全て1

no image
ターミナルでgitのコマンドを補完したりブランチ名を表示する – macでgitを便利に使うために –

* やりたいこと macのターミナルでgitをいじっていると -今の

→もっと見る

PAGE TOP ↑