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

Selenium2.0でUIテスト(2) -Rubyでやってみよう-

前回は、Selenium + PHPを試しました。 今後はRubyでやってみようということでSele

記事を読む

no image

str_padとsprintfの速度

PHPで同じことが出来る「str_pad」と「sprintf」。 今まではsprintfを使う機会

記事を読む

Jenkins + iPhoneアプリ(2) -ローカルリポジトリにあるデータからipaファイル生成-

* これまで - * 最終目標 -(開発者)git(リモートリポジトリ)にソースをコミット

記事を読む

no image

jQuery Mobile導入手順 -はじめの一歩-

jQuery Mobileの1.0がリリースされ、利用したい方が増えていると思います。 最初に何を

記事を読む

no image

ヘルプ作成で思ったWebサービスの3つの心得 -短文の教え-

最近ヘルプを作って思った3つのこと。 * 1文に複数の内容を書かない 1文に複数の内容を書いてい

記事を読む

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

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

記事を読む

ndk

Androidアプリ開発 -画像処理をC言語で高速化-

* 画像を扱う際の問題(1):計算処理の遅さ 前回、セピア画像にする方法を書きました。

記事を読む

no image

CakePHP1.3でテストコード(2) -フィクスチャをいじってみる(テストデータの動的登録)-

cakePHP1.3でのSimpleTestを使ったテストケースの第2回目。 今回は、動的にテストデ

記事を読む

no image

iPhoneアプリ開発 -利用するべきサービス-

iPhone(iOS)アプリ開発において使っているサービスを列挙。 この手のサービスがないと、開発中

記事を読む

no image

研究室での進捗報告の方法について、ふと思ったこと

* 以下に加筆・修正して移動しました。

記事を読む

広告

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 ↑