CLI での CCD の使用
Follow this workflow to use CCD through the UGS command line interface, such as to authenticate, create buckets, manage entries, and handle releases.
読み終わるまでの所要時間 5 分最終更新 2ヶ月前
このセクションでは、コマンドラインインターフェース (CLI) で Cloud Content Delivery (CCD) を使用する方法の例を、以下のトピックを含めて示します。
認証
API キーを使用してサービスにサインインします。API キーを調べる方法については、使用の準備 セクションを参照してください。 認証$ ucd auth login XXXXXXXXXXXXLogin successful.
auth info$ ucd auth infoCurrent user: Joe Smith
バケットの作成
最初のバケットを作成します。バケットは 1 つのプロジェクトに関連付けられます。この例のプロジェクト ID はe1942cea-12df-4220-aa6d-f8c9c3ab7526b5179fae-d9be-4cd4-8afb-7bfdd691eb06このプロジェクトに$ ucd buckets list e1942cea-12df-4220-aa6d-f8c9c3ab7526 --environment=b5179fae-d9be-4cd4-8afb-7bfdd691eb06 No buckets found for given project and environment.
example_bucket$ ucd buckets create e1942cea-12df-4220-aa6d-f8c9c3ab7526 example_bucket --environment=b5179fae-d9be-4cd4-8afb-7bfdd691eb06Created bucket: example_bucket (aee9ee5f-fa01-46d3-a293-731d15f066cf)
バケット名とエントリー名では大文字と小文字が区別されます。
新しく作成したバケットを確認するには、このプロジェクトのバケットを再度リスト表示します。
バケットのリスト表示
エントリーとリリースの作成作業を簡単にするために、環境と新しく作成したバケットをローカル設定に保存します (操作ごとに CLI でパラメーターとして指定する必要がなくなります)。 環境 ID (この例では$ ucd buckets list e1942cea-12df-4220-aa6d-f8c9c3ab7526 --environment=b5179fae-d9be-4cd4-8afb-7bfdd691eb06Buckets for project (e1942cea-12df-4220-aa6d-f8c9c3ab7526) in environment (b5179fae-d9be-4cd4-8afb-7bfdd691eb06):- example_bucket (aee9ee5f-fa01-46d3-a293-731d15f066cf)
b5179fae-d9be-4cd4-8afb-7bfdd691eb06上のバケット作成メッセージから、バケットの ID (バケット名ではありません) をコピーします (この例では$ ucd config set environment b5179fae-d9be-4cd4-8afb-7bfdd691eb06 --project=e1942cea-12df-4220-aa6d-f8c9c3ab7526Successfully switched to environment b5179fae-d9be-4cd4-8afb-7bfdd691eb06.Currently active project: e1942cea-12df-4220-aa6d-f8c9c3ab7526.
aee9ee5f-fa01-46d3-a293-731d15f066cfCCD は、指定したバケットと環境で、エントリーとリリースに関するコマンドを自動的に実行します。$ ucd config set bucket aee9ee5f-fa01-46d3-a293-731d15f066cfSuccessfully switched to bucket aee9ee5f-fa01-46d3-a293-731d15f066cf.Currently active project: e1942cea-12df-4220-aa6d-f8c9c3ab7526.Currently active environment: b5179fae-d9be-4cd4-8afb-7bfdd691eb06.Currently active bucket: aee9ee5f-fa01-46d3-a293-731d15f066cf (example_bucket).
バケットでのエントリーの作成
この新しく作成したバケット内のエントリーをリスト表示します (リストは空のはずです)。 エントリーのリスト表示ローカルフォルダー内のすべてのファイルを同期します。この例では、ローカルフォルダーには生成された アセットバンドル がコンテンツとして含まれています。 ファイルの同期$ ucd entries listNo Entries found for current bucket.
これにより、ファイルがバケットにエントリーとして追加されます。バケットのコンテンツをリスト表示し、各エントリーに関するいくつかの基本情報を確認できます。 バケットのコンテンツのリスト表示$ ucd entries sync ./ServerData/StandaloneOSXCalculating...Added Entry: catalog_2019.07.30.18.24.34.hashAdded Entry: catalog_2019.07.30.18.24.34.jsonAdded Entry: remotedemodata_green.bundleAdded Entry: remotedemodata_mat1.bundleAdded Entry: remotedemodata_sphere.bundleAdded Entry: remotedemodata_unitylogo.bundleAdded Entry: remotedemodata_unitylogoprefab.bundleAdded Entry: remotedemodata_scenes_scene2.bundleAdded Entry: remotedemodata_scenes_scene.bundleAdded Entry: spaceshooterdata_done_asteroid01.bundleAdded Entry: spaceshooterdata_done_asteroid02.bundleAdded Entry: spaceshooterdata_done_asteroid03.bundleAdded Entry: spaceshooterdata_done_bolt-enemy.bundleAdded Entry: spaceshooterdata_done_bolt.bundleAdded Entry: spaceshooterdata_done_enemyship.bundleAdded Entry: spaceshooterdata_done_player.bundleAdded Entry: spaceshooterdata_engines_enemy.bundleAdded Entry: spaceshooterdata_engines_player.bundleAdded Entry: spaceshooterdata_explosion_asteroid.bundleAdded Entry: spaceshooterdata_explosion_enemy.bundleAdded Entry: spaceshooterdata_explosion_player.bundleAdded Entry: spaceshooterdata_starfield.bundleComplete! Bytes uploaded: 5346781
特定のエントリーについてさらに詳しい情報を取得するには、エントリーのパスを指定して$ ucd entries list22 entries for current bucket (aee9ee5f-fa01-46d3-a293-731d15f066cf):2019-08-21 14:27:03 167915 spaceshooterdata_starfield.bundle2019-08-21 14:27:00 573539 spaceshooterdata_explosion_player.bundle2019-08-21 14:26:56 412235 spaceshooterdata_explosion_enemy.bundle2019-08-21 14:26:52 382630 spaceshooterdata_explosion_asteroid.bundle2019-08-21 14:26:49 177018 spaceshooterdata_engines_player.bundle2019-08-21 14:26:45 157215 spaceshooterdata_engines_enemy.bundle2019-08-21 14:26:42 1085518 spaceshooterdata_done_player.bundle2019-08-21 14:26:38 1070297 spaceshooterdata_done_enemyship.bundle2019-08-21 14:26:34 27178 spaceshooterdata_done_bolt.bundle2019-08-21 14:26:31 28362 spaceshooterdata_done_bolt-enemy.bundle2019-08-21 14:26:28 231658 spaceshooterdata_done_asteroid03.bundle2019-08-21 14:26:24 221450 spaceshooterdata_done_asteroid02.bundle2019-08-21 14:26:20 227842 spaceshooterdata_done_asteroid01.bundle2019-08-21 14:26:17 23016 remotedemodata_scenes_scene.bundle2019-08-21 14:26:13 23064 remotedemodata_scenes_scene2.bundle2019-08-21 14:26:10 10568 remotedemodata_unitylogoprefab.bundle2019-08-21 14:26:07 462522 remotedemodata_unitylogo.bundle2019-08-21 14:26:03 7864 remotedemodata_sphere.bundle2019-08-21 14:26:00 6320 remotedemodata_mat1.bundle2019-08-21 14:25:57 6320 remotedemodata_green.bundle2019-08-21 14:25:53 44218 catalog_2019.07.30.18.24.34.json2019-08-21 14:25:50 32 catalog_2019.07.30.18.24.34.hash
entries infoこれでゲームクライアントは、エントリーに関連付けられたパスを使用して、バケット内の個々のファイルのコンテンツをリクエストできるようになりました。ゲームクライアントのリクエストはすべて、$ ucd entries info spaceshooterdata_starfield.bundle`Entry Info:Path: spaceshooterdata_starfield.bundleId: 8ac46783-be01-4a47-b23e-74233fc7cc09Last Modified: 2019-08-21 14:27:03Content Size: 167915Content Hash: 4a3ad5b69bd489699d1909e8868a7cb1Content Type: application/octet-streamContent Link: …Labels:Metadata:Current Version: aa0304db-fd9f-4772-9549-dfeb44cc6d6f
<project_guid>.client-api.unity3dusercontent.com/client_api/v1/spaceshooterdata_starfield.bundlehttps://<project_guid>.client-api.unity3dusercontent.com/client_api/v1/buckets/aee9ee5f-fa01-46d3-a293-731d15f066cf/entry_by_path/content/?path=spaceshooterdata_starfield.bundlehttps://<project_guid>.client-api.unity3dusercontent.com/client_api/v1/buckets/aee9ee5f-fa01-46d3-a293-731d15f066cf/entries/8ac46783-be01-4a47-b23e-74233fc7cc09/content/リリースの作成
エントリーの現在の状態からリリースを作成します。 リリースの作成これにより、後でそれらのエントリーを更新または削除した場合でも、コンテンツをリクエストする際にこれらの正確なバージョンのエントリーを使用できます。$ ucd releases create -n "This is a sample note"Created release (#1) in bucket (aee9ee5f-fa01-46d3-a293-731d15f066cf).Id: 80653663-eb39-45e7-9323-e34b23df0d75Created: 2019-08-21 14:27:30...
リリースについてさらに詳しい情報を取得するには、
releases infoこのバケットに生成したすべてのリリースのリストを取得するには、以下のように入力します。 バケット内のリリースのリスト表示$ ucd releases info 80653663-eb39-45e7-9323-e34b23df0d75Release #1:Id: 80653663-eb39-45e7-9323-e34b23df0d75Created: 2019-08-21 14:27:30Content Size: 123456Content Hash: b62343cb3582a7de1286dd3cf23c3592Notes: This is a sample noteMetadata:Entries:- remotedemodata_scenes_scene2.bundle (version: d7c69bc0-5c0b-4625-8a7d-94a4972aa236)- remotedemodata_unitylogo.bundle (version: 97d3659f-0b74-403a-be67-02641ce2dc91)- spaceshooterdata_done_enemyship.bundle (version: edcedc81-80b6-4006-9732-0444898fcffa)- remotedemodata_unitylogoprefab.bundle (version: 4edfa2be-7fae-44c9-bb45-f601cc1130db)- spaceshooterdata_done_bolt-enemy.bundle (version: ef36bfa8-8b24-4b81-a329-b3fad0a0939b)...
これで、このリリース内に含まれているコンテンツを直接参照できるようになりました。これにより、後でバケット内のエントリーを変更した場合でも、CCD がリリースの生成に使用する正確なコンテンツのセットを確実に取得できます。 エントリー (例えば$ ucd releases listReleases for current bucket (aee9ee5f-fa01-46d3-a293-731d15f066cf):2019-08-21 14:27:30 #1 (80653663-eb39-45e7-9323-e34b23df0d75)
spaceshooterdata_starfield.bundlehttps://<project_guid>.client-api.unity3dusercontent.com/client_api/v1/buckets/aee9ee5f-fa01-46d3-a293-731d15f066cf/releases/80653663-eb39-45e7-9323-e34b23df0d75/entry_by_path/content/?path=spaceshooterdata_starfield.bundlehttps://<project_guid>.client-api.unity3dusercontent.com/client_api/v1/buckets/aee9ee5f-fa01-46d3-a293-731d15f066cf/releases/80653663-eb39-45e7-9323-e34b23df0d75/entries/8ac46783-be01-4a47-b23e-74233fc7cc09/content/release_by_badgelatesthttps://<project_guid>.client-api.unity3dusercontent.com/client_api/v1/buckets/aee9ee5f-fa01-46d3-a293-731d15f066cf/release_by_badge/latest/entry_by_path/content/?path=spaceshooterdata_starfield.bundleバッジの管理
リリースを生成したら、そのリリースを一意に識別するバッジを適用できます。バッジが指すことができるのはバケット内の 1 つのリリースのみですが、リリース間でバッジを移動できます。実行時には、特定のリリース ID ではなくバッジ名を使用してコンテンツのクエリを実行でき、ワークフローの柔軟性を向上させることができます。 例えば、qa_latestmy_first_badgebadge_namerelease_IDこのバケットで適用したすべてのバッジをリスト表示するには、以下のようにします。 バケット内のバッジのリスト表示$ ucd badges add my_first_badge 80653663-eb39-45e7-9323-e34b23df0d75Added badge 'my_first_badge' to release (80653663-eb39-45e7-9323-e34b23df0d75).
バッジが参照しているリリースに関連付けられているコンテンツをダウンロードする準備ができました。これは、エントリー ID でコンテンツをダウンロードするのと同様の方法で行うことができます。 エントリー (例えば$ ucd badges listBadges for current bucket (aee9ee5f-fa01-46d3-a293-731d15f066cf):2020-01-07 12:55:41 my_first_badge (80653663-eb39-45e7-9323-e34b23df0d75)
spaceshooterdata_starfield.bundlehttps://<project_guid>.client-api.unity3dusercontent.com/client_api/v1/buckets/aee9ee5f-fa01-46d3-a293-731d15f066cf/release_by_badge/my_first_badge/entry_by_path/content/?path=spaceshooterdata_starfield.bundlehttps://<project_guid>.client-api.unity3dusercontent.com/client_api/v1/buckets/aee9ee5f-fa01-46d3-a293-731d15f066cf/release_by_badge/my_first_badge/entries/8ac46783-be01-4a47-b23e-74233fc7cc09/content/