Fastlaneにてcordova(ionic)プロジェクトのiOSアプリをDeploygateにアップロードする手順
今回やりたいことは以下
・cordova(ionic)プロジェクトで作成したアプリをビルド
・ビルドしたアプリをデプロイゲートへアップロード
とりあえずはデプロイゲートまでアップするのが目標
fastlaneインストール
fastlaneをインストール
$ sudo gem install fastlane
AdHoc版のビルドまでできるように
ionicプロジェクトの作成して最新のcordova-iosをインストール
$ ionic start --v1 fastlane_demo $ cd $_ $ ionic platform rm ios && ionic platform add ios@latest
fastlaneディレクトリを作成
$ cd fastlane_demo $ mkdir fastlane
fastlane/Appfile
app_identifier "xxx.yyy.zzz" # アプリのバンドルID apple_id "xxx@xxx" # AppleID team_id "xxxxxxxx" # TeamID
team_idはxcodeのSigningのTeamで選択してるやつのID。
IDはAppleDeveloperのMembershipから確認できる。
fastlane/Fastfile
platform :ios do
desc "AdHoc Build For iOS"
lane :build do
gym(
workspace: 'platforms/ios/fastlane_demo.xcworkspace',
silent: true,
clean: true,
export_method: "ad-hoc"
)
end
endこちらのFastfileにタスクを記述してコマンドで実行する形。
$ fastlane ios build
成功すればプロジェクト直下のディレクトリに ipaファイルとdSYMファイルが出来上がってるはず。
基本的にxcodeからアーカイブしてエクスポートしてるのと同じはずなので、うまくいかない場合はxcodeから試してみてうまくいくか確認するとよいかも。
Deploygateにアップロード
あとはデプロイゲートにアップロードする
fastlane/Fastfile
platform :ios do
・・・
desc "Upload Deploygate For iOS"
lane :upload_deploygate do
deploygate(
api_token: 'xxxxx' # デプロイゲートのAPIキー
user: 'xxxxx', # デプロイゲートのアカウント
ipa: 'xxx.ipa' # ipaのパス
)
end
end実行
$ fastlane ios upload_deploygate
まとめ
git cloneしてから一連の作業をまとめるとこんな感じかな
$ ionic prepare && fastlane ios build && fastlane ios upload_deploygate
とりあえずCircleCIに乗せる前段階の調査としてこんな感じで。以上です