1. HOME
  2. ブログ
  3. IT技術
  4. 【CI/CD】BitriseでDeployGateなFlutterのAndroidとiOSをやってみる

【CI/CD】BitriseでDeployGateなFlutterのAndroidとiOSをやってみる

第3弾~はじめに~

秋山笹川先生

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

CIシリーズ第3弾です!

引き続きBitriseの使い方を紹介いたします。

ちなみに、今回がBitriseシリーズ最後です!

今回は、クロスプラットフォームのFlutterでAndroidとiOSそれぞれをDeployGateにデプロイしてみます。

前回の記事 :【CI/CD】BitriseでDeployGateなiOSをFastlane matchでやってみる
前々回の記事:【CI/CD】BitriseでDeployGateをAndroidでやってみる

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

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

Flutterのビルド環境はこちら

Androidのビルド環境はこちら

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

iOSのビルド環境はこちら

  1. 証明書の設定はManual
  2. CLIは不使用
  3. ConfigrationはDebug,Releaseの2種類
  4. AdhocはReleaseで設定
  5. 証明書はDevelopment,Adhoc,Appstoreの3種類
  6. Xcodeは10.2.1

設定してみる

今回は、公式ドキュメントを参考に進めていきます。

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

しかし、毎度のごとくうまくいきません

署名エラーを対応する

これは、iOSのエラーですね。

前回の記事でも、署名エラーでp12ファイルをアップロードして解決したので同じように対応します。

プロビジョニングプロファイルのエラーを対応する

これは、完全に笹川のミスなのですが、matchなどプロビジョニングプロファイルの署名周りの設定を入れていませんでした

こちらは、p12ファイルと同様にそれぞれプロビジョニングプロファイルをアップロードします。

Workflow Editor → Code Signing → PROVISIONING PROFILE

これで、署名/証明書関連のアップロードは終わりになります。

忘れずに Workflow に Certificate and profile installer を追加しておいてください。

iOSのDeployGateアップロード失敗に対応する

こちらを DeployGate にアップロードする際に、パス指定を $BITRISE_APP_DIR_PATH としましたがアップロードに失敗しました

デフォルトでFlutterビルドで生成されるのは、.appファイルです。

.ipaファイルを生成するコマンドはないようです。

そのため、こちらの記事を参考にScriptを設定します。

Flutter アプリを Bitrise で DeployGate に自動アップロード

これで、.ipaファイルが生成されるようになりました。

DeployGateアップロードのファイルパスを、 $FLUTTER_IPA_PATH へ忘れずに設定してください。

Artifactsにipaファイルが保存されないのを対応する

DeployGateへのアップロード対応でipaを出力するようにしましたが、このままだとArtifactsとして保存されませんのでその対応をします。

こちらは、先程の手順で追加したScriptに1行追加するだけです。

これで、Bitriseを利用したFlutterのDeployGateでのデプロイが完了となります。

Androidの64bitビルドを対応する

昨今、話題になっているAndroidの64bit対応ですが、Flutterでは通常のビルドでは64bit対応されません

Workflow の Flutter BuildAndroid Platform Configs で、 Addtional parameters にパラメーターを追加します。

これで64bit対応がされた.apkファイルが出力されます。

さいごに

秋山笹川先生

iOSのCIビルド、もといビルドそのものは、やはり一筋縄ではいきませんね。

しかし、無料でCIビルドできるって本当に素敵ですね!

今回で、Bitriseシリーズは最終回となります。

お付き合いありがとうございました!

(株)ライトコードは、WEB・アプリ・ゲーム開発に強い、「好きを仕事にするエンジニア集団」です。
BitriseやFlutter、Android・iOSアプリの開発依頼・お見積もりはこちらまでお願いします。
また、Flutterやスマホアプリエンジニアを積極採用中です!詳しくはこちらをご覧ください。

※現在、多数のお問合せを頂いており、返信に、多少お時間を頂く場合がございます。

オススメ本

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

 

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

関連記事

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

関連記事

採用情報

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

バックエンドエンジニア

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

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

\ 世界を変える…! /

Androidエンジニア

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

iOSエンジニア