New Style Service

リリース情報とか諸々

BitriseでAndroidビルドをしようとして右往左往した話

ちょっと仕事でBitriseを利用することになったので、そこで右往左往した話をご紹介

Bitriseとは

最近モバイルアプリ界隈で話題にCIサービス「Bitrise

ドキュメント通りに何度試してもエラーに

oh... (´・ω・`)

つまづきポイント1

アプリにNDKを利用している

....(゚д゚)

WorkFlowでSDKインストールと合わせてNDKインストールもしないとなのね!

つまづきポイント2

build.gradleでsingingの設定がすでに記載されている

....(゚д゚)

App BuildとAPK SinginじゃなくてGradle Runnerを使えばいいのね!

つまづきポイント3

なぞにSDKインストールで失敗する

....(゚д゚)

全部Fastlaneで実行して、laneだけ呼べばいいんじゃね? (・∀・)ソレダ!!

つまづきポイント4

なぞにArtifactsでapkが取得できない

....(゚д゚)

....(゚д゚)

....(゚д゚)

余計なジョブ全部なくせばいいんじゃね? ....コレダ(゚д゚)+

SDKインストールやめました。

結果こんな感じに

f:id:sasanori-0126:20190526220405p:plain

個人開発なんかでもbuild.gradleにsingingの設定入れてる場合も多いのかなって思い、アウトプットしてみた感じです。

ymlファイルは下記に置いておきますね。

---
format_version: '7'
default_step_lib_source: https://github.com/bitrise-io/bitrise-steplib.git
project_type: android
workflows:
  debug-deploy:
    steps:
    - activate-ssh-key@4.0.3:
        run_if: '{{getenv "SSH_RSA_PRIVATE_KEY" | ne ""}}'
    - git-clone@4.0.14: {}
    - script@1.1.5:
        title: Do anything with Script step
        inputs:
        - content: |
            #!/usr/bin/env bash
            # fail if any commands fails
            set -e
            # debug log
            set -x
    - cache-pull@2.0.1: {}
    - gradle-runner@1.9.0:
        inputs:
        - gradle_task: assembleDebug
        - gradlew_path: "$PROJECT_LOCATION/gradlew"
    - deploygate--upload-app-bitrise-step@1.0.1:
        inputs:
        - owner_name: xxxxxxxxxxxx
        - app_path: "$BITRISE_APK_PATH"
        - message: "[$BITRISE_BUILD_NUMBER] Debug Build [$BITRISE_GIT_BRANCH] ($BITRISE_GIT_MESSAGE)"
        - api_key: "$DEPLOYGATE_API_KEY"
    - deploy-to-bitrise-io@1.4.1: {}
    - cache-push@2.2.0: {}
    - slack@3.1.2:
        inputs:
        - webhook_url: "$SLACK_URL"

app:
  envs:
  - opts:
      is_expand: false
    PROJECT_LOCATION: "."
  - opts:
      is_expand: false
    MODULE: app
  - opts:
      is_expand: false
    VARIANT: ''
trigger_map:
- push_branch: master
  workflow: debug-deploy