LoginSignup
0

More than 3 years have passed since last update.

FastlaneのコマンドをBitriseに組み込む(ios,ReactNative)

Last updated at Posted at 2019-08-24

下記記事でReactNativeアプリのデプロイをFastlaneで自動化する手順を紹介しました。
FastlaneでReactNativeのデプロイを自動化する(ios)

今回はCICDツールとして有名なBitriseを使用して、Githubにpushした際に、自動的にfastlaneが実行する仕組みを構築します。
android版はこちら↓
FastlaneのコマンドをBitriseに組み込む(android,ReactNative)

事前準備

Bitriseに対象となるGithubのrepositoryを登録しておきます。
注意点として、SSHの公開鍵の登録ですが、repositry単体ではなく、Githubユーザーに対して登録するようにします。
repository単位で登録すると、fastlane実行の際に証明書を引っ張ってくる場所でエラーが発生します。

Bitrise
image.png
GitHub
Screen Shot 2019-08-24 at 15.48.47.png

環境変数の設定

下記の変数を追加します。
GITHUB_USER_EMAILGITHUB_USER_NAMEは使用しているGithubの情報を入力します。
Screen Shot 2019-08-24 at 15.27.52.png

secretの設定

下記の変数を追加します。
- FASTLANE_USER = apple ID
- FASTLANE_PASSWORD = apple IDのパスワード
- MATCH_PASSWORD = githubのパスワード(repositoryにある証明書を取得するため)
image.png

Workflowの設定

下記イベントを追加します。
基本的に追加した後に設定を変更する必要はありませんが、一部イベントは記述を書き換えます。

image.png

Script

script contentsを下記のようにします。

#!/usr/bin/env bash
# fail if any commands fails
set -e
# debug log
set -x

# Add github.com to known host 
ssh-keyscan -t rsa github.com >> ~/.ssh/known_hosts

# Configure Git user
git config --global user.name $GITHUB_USER_NAME
git config --global user.email $GITHUB_USER_EMAIL

Run npm command

Working directory
$BITRISE_SOURCE_DIRを入力
The npm command with arguments to run
installを入力

image.png

fastlane

fastlane lane
$FASTLANE_LANEを入力
Working directory
$FASTLANE_WORK_DIRを入力
image.png

トリガーの設定

任意のブランチにpushした際に、どのwrokflowを実行するかを設定します。
workflowは先程設定したflowを選択します。

image.png

実行

指定したbranchにpushしますと、Bitriseが発動します。

バージョン番号の自動インクリメントについて

fastlaneの設定でバージョン番号は自動的に上がるのですが、Bitriseのサーバ上で実行されるため手元のファイルでは更新されない問題が発生します。
下記記事でそれに対する対応法を記述しました。
Bitriseのナンバリングを利用して、バージョンの自動インクリメントを実現(ReactNative, ios)

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0