CloudKit開発の自動化

プロセスを自動化してローカル統合テストと継続的インテグレーション(CI)システムをサポートするにあたり、CloudKitツールと認証に関する検討事項について確認しましょう。

CloudKit自動化ツールは、テストの自動化機能を提供することで、CloudKitに対応した優れたアプリの構築に役立つように設計されています。CloudKit自動化ツールを使うと、デベロッパや開発チームのメンバーは以下のことができます。

  • Sandboxデータベースをプロダクション環境の構成にリセットする。
  • CloudKitスキーマファイルをSandboxデータベースに適用する。CloudKitスキーマファイルの詳細を確認する
  • データベースにテストデータを入れる。
  • XcodeまたはCIシステムから統合テストを実行する。

cktool

このmacOSアプリを使うと、CloudKit Console APIで提供される機能を利用できるため、ローカルでの開発や統合テストのためのCloudKit設定操作が簡単になります。cktoolの使用についてさらに詳しく

CKTool JS

このJavaScriptライブラリにはTypeScript型宣言が用意されているため、スクリプトを使ったインタラクティブなCloudKit設定操作を開発して、独自のツールに組み込むことができます。CKTool JSに関するドキュメントを見る

認証

CloudKit自動化ツールを利用するには、以下の表に記載されている認証メカニズムのいずれかを使う必要があります。

管理トークン

CloudKit管理トークンは、スコープがチームとユーザーであり、CloudKit Management APIへのアクセスを許可します。管理トークンのデフォルトの有効期間は1年で、CloudKit Dashboardの「Settings(設定)」セクションで無効化できます。

ユーザートークン

ユーザートークンのスコープはユーザー1人です。このトークンはインタラクティブなログインを使って作成されるため、自動化できません。ユーザートークンでは、プライベートデータベースや共有データベースへの読み書き機能が提供されます。ただし、ユーザートークンの有効期間は短く、セッション中に再認証が必要になる場合があります。

管理トークン ユーザートークン
チームにバインド
コンテナにバインド
環境にバインド
ユーザーにバインド
パブリックデータベースを照会可能
プライベートデータベースを照会可能
共有データベースを照会可能
管理APIにアクセス可能