はじめに
モバイル特化のCI環境であるBitriseを使ってAndroidアプリの自動ビルド、署名、Slack通知まで試してみる
アカウント作成
公式ページ にアクセスしログインする
github ログインしたものとして話を進める

初期設定
ログインするとビルド対象のリポジトリを選択する画面になるので手順に沿って進めていく
基本的にボタンをクリックするだけで自動で設定されていく

後からでもできるが、WebHookの設定を聞かれるので設定しておく
これによってリポジトリが操作されたタイミングで自動ビルドが実行されるようになる

完了するとデフォルト設定のまま最初のビルドが始まる

Workflowの設定
ビルドは Workflow
に設定された Step
に沿って実行されるが、デフォルトで指定されている Android Lint
Android Unit Test
は、全 Build Variants
に対して処理を行う設定になっているので、必要であれば Variant
指定を release
のみなどに変更する
また以下の処理はデフォルトでは実行されないため、別途 Workflow
に Step
を追加する必要がある
- apkのビルド
- 署名
- slack通知
- aabのビルド
apkのビルド設定
Workflow
を選択し Android Build
の Step
を追加する
ほとんどの項目はデフォルトのままで問題ないが Variant
の欄のみ修正し release
を指定した

署名設定
Sign APK
の Step
を追加する

上部の Code Signing
タブから keystore
のアップロード、パスワード類の入力を行う

keystore
ファイルは Protected
指定することでダウンロード不可にできる
更新する場合は一旦削除してアップロードし直すことになる
ここまでの設定でビルドすると既に署名付き apk
が出力されるようになっている

Slack通知設定
Send a Slack message
の Step
を追加する

Slack の方で Web Hook URL
を発行し、設定する
またメッセージを出力したいチャンネル名も設定する
ビルド完了時に Slack に通知が飛んでくるようになる
自動生成されたインストールページ

aabのビルド設定
aab
のビルドは Gradle Runner
の Step
で行う

-
Gradle task to run
:bundleRelease
-
gradlew file path
:./gradlew
-
Export Config
のAPK file include filter
:*.aab
は指定する必要があった
トリガー
上タブの Triggers
欄で自動ビルドを実行させるタイミングを指定できる

まとめ
Bitrise で Android アプリの自動ビルドができた