CatHand Blog

アプリ開発やMac弄り

BitriseでFirebase App Distributionのリリースノートを自動生成

Firebase App Distribution は便利ですが、Bitrise から Firebase App Distribution へ自動でデプロイすると空のリリースノートのメールがテスターに送信されてしまいます。

リリースノートに何か入れたいので、やり方を考えてみました。

GitHub - alphaversion/bitrise-step-github-issue-info

↑のStepを使うと、最新のコミットコメント内のissue numberからGithubのissue titleとbodyを取得できます。

一方、PRをマージすると Merge pull request #224 from ... みたいなコミットコメントが入ります。

ですので、

  • PRにリリースノートの内容を記述
  • Github Issue Info ステップで $GITHUB_ISSUE_TITLE$GITHUB_ISSUE_BODY を取得
  • Firebase App Distribution ステップでリリースノートに↑を入れる

とすると、PRに書いた内容が Firebase App Distribution のリリースノートになります。

上記のようなWorkflowにしておいて、

  • Firebase App Distribution へリリースビルドするブランチへはPRを作って、そこにリリースノートを書く

という運用にすると、Firebase App Distribution へデプロイされたときにリリースノートが入るので、テスターへのメールにもリリースノートが記載されるようになります。

Workflowは↓のようなかんじになります。

workflows:
  release:
    steps:
    - activate-ssh-key:
        run_if: '{{getenv "SSH_RSA_PRIVATE_KEY" | ne ""}}'
    - git-clone: {}
    - cache-pull: {}
    - git::https://github.com/alphaversion/bitrise-step-github-issue-info.git@master:
        inputs:
        - personal_access_token: "$GITHUB_API_KEY"

      ... 何かビルドするsteps...

    - firebase-app-distribution:
        inputs:
        - app_path: "$BITRISE_IPA_PATH"
        - release_notes: "$GITHUB_ISSUE_TITLE"
        - firebase_token: "$FIREBASE_TOKEN"
    - cache-push: {}