⚒️

Xcode Cloud でプロジェクトをビルドしてみる

2021/11/04に公開

これは何

Xcode Cloud でプロジェクトをビルドする方法のメモです。そもそも Xcode Cloud って何よ?という方は下記サイトを御覧ください。

Xcode Cloud Overview - Apple Developer

利用申請

Xcode Cloud はまだベータ版であり、利用するには下記URLから申し込む必要があります。

https://developer.apple.com/xcode-cloud/beta/request/

何日か待つと「使えるようにしたよ〜」といった内容のメールが Apple から届きます。

とりあえずビルドしてみる

まずは Xcode 13 以降をインストールしましょう。

次に Xcode のメニューから Product > Xcode Cloud > Create Workflow... を選択します。

スクリーンショット 2021-11-04 8.42.10.png

あとは画面に従って

  • 対象プロダクト(iOS, macOS, watchOS 等)
  • 対象ブランチ
  • Xcode / macOS のバージョン
  • アーカイブの有無
  • TestFlight 配信の有無

を選択します。

スクリーンショット 2021-11-04 8.47.34.png

その後、GitHub のアクセス権限を許可すれば最初の設定は完了です。

スクリーンショット 2021-11-04 8.53.19.png

"Start Build" をクリックするとすぐにビルドが始まります。

スクリーンショット 2021-11-04 8.55.13.png

ビルド結果は App Store Connect の Xcode Cloud タブからも確認できます。

スクリーンショット 2021-11-04 8.38.19.png

ビルドに失敗した場合は詳細なログも確認できます。

スクリーンショット 2021-11-04 9.00.07.png

ビルド結果を Slack やメールで送信することもできるので、まずは色々さわってみるとよいでしょう。

スクリーンショット 2021-11-04 9.28.38.png

CocoaPods や Carthage を使う

Xcode Cloud には CocoaPods や Carthage 等のサードパーティ製ツールがインストールされていません。もし、CocoaPods を使いたい場合は、次の2つの方法からいずれかを選択できます。

1つ目は Podfile、Podfile.lock、および Pods ディレクトリを丸ごとリポジトリにプッシュする方法です。こうすることで、Xcode Cloud 上で pod install を実行する必要がなくなります。ただし、当然アップロードするファイルサイズも膨大になるので注意が必要です。

2つ目はShellスクリプトを書いて自分で CocoaPods をインストールする方法です。Xcode Cloud には Homebrew がインストールされていますので、brew コマンドで CocoaPods をインストールすることが可能です。プロジェクトディレクトリ直下に ci_scripts ディレクトリを作成し、ci_post_clone.sh という名前で次のスクリプトを作成しましょう。

#!/bin/sh

# Install CocoaPods using Homebrew.
brew install cocoapods
		
# Install dependencies you manage with CocoaPods.
pod install

これで Xcode Cloud で pod install が実行可能になります。

Carthage についても同様にShellスクリプトでインストールし、依存関係をセットアップすることができます。

スクリプトの詳細については下記ドキュメントを参照してください。

Writing Custom Build Scripts | Apple Developer Documentation

リンク

Discussion