1. HOME
  2. ブログ
  3. IT技術
  4. 【CI/CD】BitriseでDeployGateをAndroidでやってみた

【CI/CD】BitriseでDeployGateをAndroidでやってみた

第1弾~はじめに~

秋山笹川先生

(株)ライトコードの笹川(ささがわ)です!

弊社ブログの中で、あまりCIについて触れているものがないので、先陣きっていくつか書いていこうかと思います!

CIやCDについてのそもそもの説明については、探せば多く出てくると思いますので省略します。

なぜBitrise(ビットライズ)なのか?

有名なところでいうと「CircleCI」や「TravisCI」など「CI」は、多くのサービスやツールがありますが、Bitriseには他とは大きく違ったメリットがあります。

それは、「無料でiOSアプリケーションのビルドが出来る!」 というところです。

しかし、今回のテーマは、「Android(アンドロイド)」

そうです!

次の記事は、「BitriseでDeployGateなiOSのこと」を書きます!(予告)

また、今回は、「会員登録の手順」は、探せば多く出てくると思いますのでこちらも省きます。

早速設定を始めてみましょう!

Androidビルドの環境はこちら

  1. compileSdkVersion 28
  2. buildToolsVersion '28.0.3'
  3. minSdkVersion 21
  4. targetSdkVersion 26
  5. keystoreはそれぞれリポジトリに含む

設定してみる

公式ドキュメント通りに進めてみます。

【公式ドキュメント】
https://devcenter.bitrise.io/jp/getting-started/getting-started-with-android-apps/

すると、いきなり install-missing-android-tools でエラーが!!

よく見るとWarinigが出ています。

どうやら、NDKのインストールがうまく行ってない様子です。

NDKのインストール

では、NDKのインストールの設定もしてみましょう。

https://developer.android.com/ndk/downloads

AndroidのNDKの最新安定バージョンは、上記URLを参考に下記のように指定をしてみましょう。


これで、ReBuildをしたらどうでしょう?

実は、笹川の環境下では、これでもダメでした。

Fastlaneでビルドしてみる

公式ドキュメントの通りじゃビルドが出来ないので、思い切ってFastlaneを導入してみました。

laneはこちら

ビルド自体はうまくいきました!

DeployGateへのアップロードも問題なく出来るようになりました。

問題発生

しかし、ここでまた一つ問題が出てきます。

Deploy to Bitrise.io で、Artifactsがうまく保存されません

GradleRunnerを使ってみる

Bitriseには、gradlewコマンドをそのまま実行するためのGradleRunnerというアイテムもあります。

こちらに先程、laneで指定したのと同じ assembleDebug  を設定します。

どうやらこれが最適解だったようです。

Artifactsがうまく保存されないのを深掘りしてみる

デフォルトのDeploy to Bitrise.ioの設定

設定画面上では、 Deploy directory or file path には、  $BITRISE_DEPLOY_DIR  と設定されています。

こちらをfastlaneの主力先を $BITRISE_DEPLOY_DIR  と変えさえすれば、 fastlane でも問題なくArtifactsに保存されました。

さいごに

Bitriseの公式ドキュメントは、日本語の整備もされていますし、GUIで設定できることが多いので素晴らしいツールです。

しかしながら、ドキュメントに載っていないもの情報は、あまりQiitaやブログ記事でも多いのですが、エラーが出た時にどう対応したかという記事は多くないです。

今日、紹介したのは、笹川の個人ブログで取り上げたこちらの記事を深掘りした記事となります。

Bitrise日本法人ブログでも引用していただき、Bitriseの公式ブログの方でもちょっとだけ紹介されたりなど少し反響がありましたので、この場を借りて詳細な内容をアウトプットさせていただきました。

秋山笹川先生
冒頭で述べた通り、次回は、iOSで同じくBitriseを利用したDeploy方法を紹介しようかと思います!

こちらの記事もオススメ!

関連記事

オススメ本

iOSアプリ開発自動テストの教科書 〜XCTestによる単体テスト・UIテストから,CI/CD,デバッグ技術まで
iOSアプリ開発自動テストの教科書 〜XCTestによる単体テスト・UIテストから,CI/CD,デバッグ技術まで

 

最終的に出来上がったymlファイル

 

書いた人はこんな人

笹川(エンジニア)
新潟生まれ新潟育ち本業はモバイルアプリエンジニア。
日々、猫(犬)エンジニアとして活躍中!

関連記事

採用情報

\ あの有名サービスに参画!? /

バックエンドエンジニア

\ クリエイティブの最前線 /

フロントエンドエンジニア

\ 世界を変える…! /

Androidエンジニア

\ みんなが使うアプリを創る /

iOSエンジニア