-
Xcode Cloudによる構築、配信、自動化
アプリの構築と配信をスムーズに開始する上で役立つ、Xcode Cloudの最新機能を確認しましょう。Xcode Cloudの基本的な概念を説明してから、ソースリポジトリを接続するだけのクラウドビルドとテストのシンプルなセットアップ方法、リリースに先立つアプリ配信のため構成方法を解説します。極めて高度なワークフローのサポートを可能にする、Webhookや管理ツールによるXcode Cloudの機能拡張も紹介します。
関連する章
- 0:00 - Introduction
- 1:13 - Essential concepts
- 2:07 - Getting started
- 6:42 - Distribution
- 9:21 - Webhooks
- 11:22 - Additional repositories
- 13:00 - Next steps
リソース
関連ビデオ
WWDC26
Tech Talks
WWDC24
WWDC23
-
このビデオを検索
こんにちは、Tonyです。 Xcode Cloudチームのエンジニアです。 Xcode Cloudは、Xcodeに組み込まれた 継続的インテグレーションおよびデリバリーサービスで、 Appleデベロッパーのために 特別に設計されています。 クラウドでアプリをビルドしてテストし、 配布のセットアップを シームレスに行える方法を提供します。 TestFlightやApp Storeに アプリを届けることができます! 今年は、Xcode Cloudの 基本機能の改善に注力しました。 アプリのアイデアを持ち始めたばかりの方でも、 初日からXcode Cloudを 使い続けてきた方でも関係ありません。 すべてのステップで 意味のある改善が見つかるでしょう。 ビルドとテストから 配布まで。 今日は、いくつかの重要な概念に 触れていきます。 次に、開発中の新しいアプリで Xcode Cloudを始める方法が いかにシームレスかをお見せします。 さらに、ユーザーからフィードバックを 収集できるよう配布のセットアップを行います。 最後に、ちょっと覗いてみましょう。 webhookと組み込みの リポジトリ管理ツールが ワークフローを拡張して 次のレベルに引き上げる方法を。 まず、基本的な概念を 確認しましょう。 アプリ開発は常に変化しており、 今年も例外ではありません。 Xcodeにエージェントのサポートが追加され、 多くのデベロッパーが これまで以上に多くのコードを書いており、 機能や変更を素早く反復し、 ユーザーにより多くの価値を届けています。 素晴らしいことです! しかし、どうすればスケールアップできるでしょうか。 コードの急速なペース、 新機能に追いつきながら、 バグやパフォーマンスの問題を 確実に捕捉し、 顧客のデバイスに届く前に対処するには?
Xcode Cloudは品質のための コンパニオンです。
ローカル開発と比べて、 Xcode Cloudはクラウドで アプリを並行してビルドしテストします。 複数のデバイスとOSバージョンにわたって。 テスターからフィードバックを 得る準備ができたら、 配布のセットアップがとても簡単で、 TestFlightやApp Storeに ビルドを届けられます。 さあ、始めましょう! フルタイムのエンジニアとして、 私は常に解決すべき 興味深い問題を探していますが、 パートタイムのバリスタでもあります。 オフィスでコーヒーを作るのが大好きで、 同僚たちも気づいています。 しばらくの間、彼らにコーヒーを 作り続けてきましたが、 すべての注文と好みを 追跡するのが難しくなってきました。 「オフィス」のコーヒーショップを 運営するのを助けるために、 iOS アプリを開発してきました。 アプリが成長するにつれて、 テストスイートも拡大します。 ビジネスロジックのユニットテスト、 チェックアウトのような重要なフローが リグレッションしないようにするUIテスト。 変更のたびにこれらのテストを すべてローカルで実行すると、 実際の時間がかかり始めています。 新しい機能の追加や ユーザーフィードバックへの対応に 使えるはずの時間です。 Xcode Cloudを導入する時が来ました。 ビルドとテストが自動化されれば、 ローカルマシンに 縛られなくなります! これがXcodeの私のアプリです。
始めるために、 Reportナビゲーターに移動して、
「Cloud」というタブを選択します。
「Get Started…」を選択します。
ワークスペース内のすべての プロダクトが表示されます。 今は1つだけです。 Developer Teamはすでに設定されており、 Signing & Distribution設定と 一致しています。 「Next」をクリックします。
アプリをビルドするために、 Xcode Cloudはソースコードに アクセスする必要があります。
オンボーディングアシスタントが リポジトリを読み込み、 接続するための手順に 従うだけです。 ソースプロバイダーによって 手順が異なる場合があります。
プロジェクトの接続について 詳しくは、 「Connect your project to Xcode Cloud」を ご確認ください。
接続できました! 「Next」をクリックする前に、 ソースコードについて話しましょう。
Xcode Cloudのビルドは エフェメラル仮想マシンで実行されます。 ソースコードはビルドが開始されたときにのみ フェッチされ、 ビルドが完了すると 破棄されます。 ソースコードは一切保存されず、 Appleはアクセスする手段を 持っていません。
Xcodeに戻ります。 「Next」をクリックすると、
完了です!
Xcode Cloudがプロダクトと デフォルトワークフローを作成しました。 今はこれで満足しています。 あとクリック1回で 最初のビルドを開始できます!
オンボードされたプロダクトを展開すると、
最初のビルドが実行されています。 いいですね! iPhoneアプリがオンボードされましたが、 オフィスで作業するとき、 MacBookを使うことが多く、 注文が届くのを確認して 管理する方法が欲しいと思っています。 そこで、そのためのmacOSアプリを 作りました。 それをXcode Cloudで オンボードするのがいかに簡単かを見てみましょう。
macOSアプリは同じ Xcodeワークスペースにあります。 作成したスタイルフレームワークを 共有しているためです。
Reportナビゲーターに戻って、
ナビゲーターの左下にある 「More」ボタンを選択します。
ここから「Create Workflow…」を選択します。
アシスタントにmacOSアプリが 表示されます。 オンボード済みのiOSアプリも同様です。 macOSアプリを選択して 「Next」をクリックします。
以前にXcode Cloudへの アクセスを許可しているため、 リモートリポジトリへのアクセスも 許可されており、 リポジトリの接続ステップは 再度必要ありません。
セットアップ完了。 macOSブランチを選択して、 最初のビルドを開始しましょう。
クラウドセクションに両方のアプリの ビルドとワークフローが表示されています。
これは素晴らしい出発点ですが、 まだ始まりに過ぎません。 より複雑なワークフローを 構築できます。 より多くのシナリオ、 より多くのプラットフォーム、 両方のアプリにわたる より多くのエッジケースをカバーして。 アプリの品質確保に ワークフローを活用する方法について 詳しく知りたい場合は、 Xcode Cloudでの実用的なワークフローの作成を ご覧ください。
次に、アイデアを実現するための 重要なステップについて話しましょう。 配布です。 Xcode Cloudでビルドとテストを実行している 2つの優れたアプリがあり、 品質確保に役立てています。 しかし、一部のユーザーは 新機能を早めにテストして フィードバックを提供したがっています。 TestFlightはこれが得意です。 そしてXcode Cloudは 統合を簡単にしてくれます。 Cloudナビゲーターで、 iOSアプリを見つけて 右クリックします。
「Set Up Distribution...」を 選択します。
Xcode CloudはApp Store Connectで 公式のアプリレコードを作成するための コンテンツが必要です。 ここでいくつかのプロパティを 指定する必要があります。 アプリ名など、 一意の識別子である Bundle ID、 そしてストア用のSKUです。 これらのプロパティがすでに使われている場合、 Xcode Cloudが教えてくれます。 アシスタントを離れることなく ここで変更できます。
アプリ名がすでに使われているようです。 ここで創意工夫が必要です。
では、作成しましょう。
配布にオンボードするまで 数秒かかります。 Xcode Cloudはアプリレコードを作成し、 確認後、Bundle IDとSKUを 登録します。 すべてバックグラウンドで行われます。
Xcodeに戻ります。 いいですね! 配布の準備が整いました。
TestFlight内部配布用の 新しい配布ワークフローが作成され、 いつでも開始できる状態です。 これが配布のセットアップ方法の一つですが、 もう一つの方法も お見せしたいと思います。 macOSアプリの配布は まだセットアップしていません。 そのための新しいワークフローを 作成したいと思います。 アプリを右クリックして 「Manage Workflows…」を選択します。
ワークフローマネージャーの下部の プラスマークを押します。
この新しいワークフローに アーカイブアクションを作成する必要があります。 TestFlightへの配布に必要な アクションだからです。
これを試みると、 セットアップ方法が提示されます。 「Set Up...」を選択します。
すべてのプロパティを確認して 「Create」をクリックします。
Xcode Cloudは同じプロセスに 従います。 macOSアプリを配布に オンボードするために。
これで完了です。
ビルド、テスト、配布は Xcode Cloudの中核ですが、 それ以上のことができます。 同僚たちはコーヒーの注文を とても楽しんでいます。 アプリについて 素晴らしいフィードバックをくれています。 何人かはエンジニアでもあるので、 修正されたバグを 自分たちで追跡してきました。 webhookを活用することで、 手動での追跡よりずっと 良い方法が取れると思います。
webhookは高度な自動化を 構築するための最適なツールです。 webhookが設定されると、 Xcode Cloudは自動的にペイロードを送信します。 ビルドに関する情報を含む 選択したサービスに。
すべてのステージにフックがあります。 ビルドが作成されたとき、 開始されたとき、 そして完了したとき。
これは、構築中のダッシュボードに 最適です。
この自動化をセットアップするために、 iOSアプリを見つけて、 右クリックして 「Manage Webhooks...」を選択します。
ここで新しいwebhookを追加します。
webhookに「Dashboard」という 名前を付けます。
ペイロードURLには、 公開解決可能なエンドポイントを入力します。
「Add」をクリックします。
設定が完了すると、 webhookリストに表示されます。
配信履歴はまだありません。
webhook設定をテストするために 新しいビルドを開始しましょう。
ビルドが完了しました。 Webhooksビューに戻ります。
ダッシュボードに送信されている webhookのイベントが見えます。 webhookのライフサイクルに対応する 3つのイベントがあります。 緑色は 配信成功を示しています。 webhookについて詳しくは ドキュメントをご覧ください。
私のCoffeeアプリはオフィスで 人気を集めています。 TestFlightのユーザーフィードバックは 素晴らしいアイデアで溢れています。 機能リクエストなども。 アプリが成長するにつれて、 複雑さも増します。
この段階での一般的な手法は、 コードを別々のリポジトリに 分割することです。 特に機能が共有されている場合。
これによりコードベースをモジュール化し、 アプリのスケールに合わせたメンテナンスが容易になります。 最近、まさにそれをしました。 スタイルフレームワークを 独自のリポジトリに分割しました。 Xcode Cloudが新しいアクセス変更と 同期を保つことが重要です。 そのスタイルフレームワークを プロジェクトに含めましょう。 iOSアプリを右クリックして、 「Manage Repositories...」を選択します。
リポジトリ設定ページが開きます。 プライマリリポジトリが 上部に表示されています。 「Additional」セクションは空です。 「Add」をクリックします。
スタイルフレームワークの GitリモートURLを貼り付け、
「Add」をクリックします。
リモートプロバイダーへのアクセスを Xcode Cloudにすでに許可しているので、 再度認証を付与する必要はありません。 Xcode Cloudは適切な依存関係を すべて揃えてプロジェクトをビルドできます。
これで、プッシュする新機能は 自動的にビルド、テスト、 デプロイされます。 何かが変更されると チームに即座に通知され、 すべてのビルドが適切な依存関係に アクセスできます。
ぜひ自分で試してみてください! Xcode Cloudの概念を見直して、 アプリをオンボードしてビルド、 テスト、配布しましょう。 さらに発展させましょう。 webhookと追加のリポジトリを 設定して、 ワークフローを自動化し プロジェクトをスケールさせましょう。 Xcode Cloudについてさらに詳しくは 「Extend your Xcode Cloud workflows」と 「Simplify distribution」を XcodeとXcode Cloudで確認ください。 Xcode Cloudはクオリティを持って リリースする自信を与えてくれます。 より速く動き、心配なく 重要なことに集中できます。 リラックスして、ゆったりと 美味しいコーヒーを楽しみましょう。
まだ熱いうちに。 ご視聴ありがとうございました。
-
-
- 0:00 - Introduction
An overview of what's new in Xcode Cloud this year and what the session covers: essential concepts, getting started, distribution, and workflow automation.
- 1:13 - Essential concepts
Xcode Cloud builds and tests your app in the cloud in parallel across multiple devices and OS versions, catching bugs and performance issues before they reach customers, and delivers builds to TestFlight and the App Store.
- 2:07 - Getting started
Onboard an iOS and macOS app to Xcode Cloud using the onboarding assistant, connect your source repository, and start your first build.
- 6:42 - Distribution
Set up TestFlight distribution for your apps by creating an app record on App Store Connect and configuring a distribution workflow directly from Xcode.
- 9:21 - Webhooks
Configure webhooks to receive build event payloads and integrate Xcode Cloud into custom dashboards and automation services.
- 11:22 - Additional repositories
Add additional Git repositories to your Xcode Cloud product so builds have access to shared dependencies like frameworks split into separate repos.
- 13:00 - Next steps
Resources for going further with Xcode Cloud, including sessions on practical workflows, extending automations, and simplifying distribution.