Travis CIでAndroidアプリをビルドしてDeployGateにアップロードします
使うもの
今回のサンプルプロジェクト
gradle準備
普通にgradleでビルド出来るようにしたAndroidアプリのプロジェクトを用意します
そして、gradleでdeploygateに簡単に上げられるgradleプラグインがあるので詳しくはここを参照しながら準備して下さい
ここで重要なのが、deploygateを上げる際にtoken(api key)が必要なんだけど、これは公開してはいけないので、gradle.propertiesを使って外部化する(下のやつのmyToken部分)
今回はこのような形になった
travis準備
これ読んでる人なら大丈夫だと思う気がする
githubにプロジェクト上げてルートに.travis.ymlを生成する
.travis.ymlの中はここを参考にさせてもらった
最終的にこのような形になった
ここで重要なのがsecureの文字列
ここにはdeploygateのtokenを記述する
今回はgradleでmyTokenといったプロパティ変数名で読み込んでいるので、こんなコマンドでいける
$ gem install travis $ travis encrypt ORG_GRADLE_PROJECT_myToken=<deploygateのtoken>
これで出力された文字列を.travis.ymlに書けば、travis内で以下のコマンドを実行したのと同じになる
$ export ORG_GRADLE_PROJECT_myToken=<deploygateのtoken>
ちなみに、ORG_GRADLE_PROJECT_<変数名>ってのを環境変数に加えると、自動でgradleがプロパティ変数化してくれる、便利
あとはgithubにpushするだけ
pushするだけでビルドが走って成功すれば自動でdeploygateにアップロードされます
便利
参照
Android Studio projectをTravis-CIでビルドする - Islands in the byte stream
Travis CI からHerokuへのデプロイを自動化してみた - アジャイルSEの憂鬱
Literal Ice: Gradleでプロパティなどの設定情報を外出しして切り替えて使う
Travis CI: Encryption keys
DeployGate/gradle-deploygate-plugin · GitHub