通过 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.
阅读时间8 分钟最后更新于 18 天前
本节举例说明如何通过命令行界面 (CLI) 使用 Cloud Content Delivery (CCD),包括以下主题:
身份验证
使用您的 API 密钥登录相应服务。如果您在查找 API 密钥时需要帮助,请参阅开始使用部分。 身份验证使用$ ucd auth login XXXXXXXXXXXXLogin successful.
auth info$ ucd auth infoCurrent user: Joe Smith
创建存储桶
创建您的第一个存储桶。存储桶与单个项目相关联。此示例的 Project 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).
在存储桶中创建条目
列出这个新创建的存储桶中的条目(应为空): 列出条目同步本地文件夹中的所有文件。在此示例中,本地文件夹包含的内容是生成的 AssetBundles: 同步文件$ 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管理标示
生成一个发布版本后,您可以应用一个标示来唯一标识这个发布版本。一个标示只能指向存储桶中的一个发布版本,但您可以在不同发布版本之间移动标示。在运行时,您可以使用标示名称而不是特定的发布版本 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/