Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
0
Help us understand the problem. What is going on with this article?
@imoans

bitrise + deploygateでtitaniumアプリ評価環境を作る

More than 3 years have passed since last update.

こんにちは。 @imoans です。 この記事はTitanium Advent Calendar 2016 13日目の記事です。

私は、今年4月に新卒入社した会社でTitaniumアプリを書いております。
入社して1年弱が経ち、アプリを書くのにも慣れてきたため、
だんだんとアプリ開発時の定常作業を自動化することに興味を持ち始めました。

当時、一番自動化したかったのがアプリリリース前のipaファイルのビルドと配布だったので、
bitriseでipaファイルをビルド -> deploygateにアップロード
という環境を作ってみました。

その時の話を書きたいと思います。

bitriseとは?

bitrise.io
スマートフォンアプリ向けのCIサービスです。
アプリビルド時に必要なProvisioning Profileやkeystoreの設定がGUIで簡単にでき、
200ビルド/月などの制限があるものの、無料枠でも十分使うことができるので、
とても便利なサービスです。

bitrise登録〜アプリ設定

まず、bitriseに登録して、githubまたはBitbucketのレポジトリを登録します。
その後、Provisioning Profileや証明書を登録して、アプリがビルドできる環境を作ります。

こちらの記事がとても参考になります。
http://qiita.com/janus_wel/items/83996325920f62a684eb

workflow設定

アプリビルドの環境が整ったら、workflowを設定していきます。
workflowとは、アプリビルドに必要な作業を一つづつ登録できるものです。
(bitriseではこの一つ一つの作業をstepと呼んでいます)

ネイティブアプリ向けには、Xcode Archive for iOSやgradle runnerなどビルド用のstepが用意されています。

Titaniumは対応していないため、専用のstepはありませんが、
scriptを追加できるので、ここにビルドコマンドを書いて追加していけば、
アプリをビルドすることができます。

今回のアプリの場合は、

npm install
npm install -g appcelerator
npm install -g titanium
appc login --username <username> --password <password>
appc ti sdk install
appc ti build -p ios -T dist-adhoc -D <certificate name> -P <provigioning profile uuid>

これらのscriptを追加しました。

ビルドしたアプリをdeploygateにアップロードする

deploygate APIをそのままworkflowに追加しました。

dist-adhoc ビルドでdevelopment用の設定を適用させたい

Titaniumではconfig.jsonに環境ごとの設定を書くことができます。
私の担当しているアプリでも公式ドキュメントの例にある通り、test, development, productionの3つの環境の設定が書かれていました。

今回bitriseでビルドするアプリではdevelopment用設定を適用させようと思っていましたが、
このままだと、build-targetdist-adhocなのでproduction用設定が選択されしまいます。

build-targetdist-adhocのときだけdevelopment用設定を適用する方法がないかと調べていたら、
Alloy1.4からdist-adhocdist-appstoreビルドを区別することが可能になっていました。。! (公式ドキュメント)

ということでconfig.jsonに以下のように設定を追加しました。

config.json
{
    "dist:adhoc": {
        "dist": "adhoc",
        "SERVER_URL": "SERVER_URL_FOR_DEVELOPMENT"
    }
}

そうすると無事、
dist-adhocビルドのときにdevelopment環境を適用することができました。


というわけで、以上のような手順でbitrise + deploygateによるリリース前のipaファイルの準備を自動化する事ができました!

これによりTitaniumでのアプリ開発を加速させることができました!

0
Help us understand the problem. What is going on with this article?
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
imoans
cureapp
医学的エビデンスに基づいた医療機器プログラム『治療アプリ』を開発しています。

Comments

No comments
Sign up for free and join this conversation.
Sign Up
If you already have a Qiita account Login
0
Help us understand the problem. What is going on with this article?