# CCD コマンドラインインターフェース (CLI)

> Use the command-line interface to manage Cloud Content Delivery buckets, entries, and release pipelines efficiently.

コマンドラインインターフェース (CLI) は、Cloud Content Delivery (CCD) と相互作用する際に推奨される方法です。このツールでは、ファイル管理からリリースパイプラインの編成まで、プロジェクトのあらゆる側面をコマンドラインを使用して制御できます。

同様の機能の多くは [ダッシュボード](./dashboard.md) でも実行できますが、バケットへのファイルのコピーやフォルダー全体の同期を行うには CLI を使用する必要があります。

## 使用の準備##installation

CLI を使用するように CCD を設定するには、以下を行います。

1. すでにプロジェクトがある場合は、次のステップに進みます。そうではなく、Unity Services を初めて使用する場合は、以下を行います。

   1. [Unity ID](https://id.unity.com/) アカウントを作成します (まだ持っていない場合)。
   2. [Unity Dashboard](https://dashboard.unity3d.com/) にサインインします。
   3. Projects (プロジェクト) ドロップダウンをクリックし、**Create project** (プロジェクトを作成) をクリックします。Create project (プロジェクトを作成) ウィンドウで、必要な詳細を入力します。

2. ダッシュボードのメインメニューで、**Explore Services** (サービスを探す) をクリックします (まだ選択されていない場合)。

3. メインウィンドウの All Solutions (すべてのソリューション) タブまたは LiveOps タブで **Cloud Content Delivery** をクリックします。

4. 左側の **Download CLI** (CLI をダウンロード) をクリックします。

5. CLI をダウンロードするには、ご使用の OS のバージョンを見つけ、ダウンロードアイコンを選択します。

6. 左側のナビゲーションバーで、**API Key** (API キー) セクションに移動します。

7. API キーをコピーします。

8. コンテンツのアップロード元のマシンで CLI を実行します。

9. `auth` コマンドで、API キーを使用して CLI にサインインします。

これで、CCD を使用する準備ができました。

## CLI の使用法##migration-information

CLI での CCD コマンドの基本形式は以下のとおりです。

`$ ucd [command]`

> **Tip:**
>
> 必ずコマンドの末尾に `-h` または `--help` を入力して、そのコマンドで利用できるパラメーターとフラグをさらに表示してください。

現在使用している CLI のバージョンを調べるには、`--version` フラグを以下のように追加します。

`$ ucd --version`

コマンドの後に、以下のグローバルフラグを追加できます。

* `--apikey string`: Content Delivery にアクセスするためのユーザー指定の API キー。
* `-h`、`--help`: 指定したコマンドのパラメーターとフラグをさらに表示します。
* `-q`、`--quiet`: 指定したコマンドによって実行された操作の表示を無効にします。
* `-v`、`--verbose`: エラー情報を表示します。

> **Note:**
>
> 0.11.0 より後のバージョンの CLI では、ほとんどのコマンドに `--environment` フラグを追加する必要があります。[CLI の例](#get-started) および [CLI での CCD の使用](./cli-walkthrough.md) を参照してください。

以下に、使用できるコマンドを示します。

### auth##unified-with-ugs-tooling

CCD での認証を行います。

使用方法: `ucd auth [command]`

以下のコマンドを使用できます。

* `info`:  現在のユーザー情報を表示します。
* `login [apikey]`: サインインして、プロジェクトデータとコンテンツ配信サービスにアクセスします。
* `logout`:  現在のアカウントからサインアウトします。

### badges##authentication-updates

リリースのバッジを管理します。

使用方法: `ucd badges [command]`

以下のコマンドを使用できます。

* `add [badge_name] [release_id]`:  リリースにバッジを追加します。
* `list`: 現在のバケット内のバッジをリスト表示します。
* `remove [badge_name]`:  バッジを削除します。

### buckets##enhanced-user-experience

プロジェクトのバケットを管理します。

使用方法: `ucd buckets [command]`

以下のコマンドを使用できます。

* `create [project_guid] [bucket name]`:  プロジェクトにバケットを作成します。
* `delete [bucket_id]`: バケットを削除します。
* `info [bucket_id]`:  バケット情報を取得します。
* `list [project_guid]`:  プロジェクトのバケットをリスト表示します。

### config##prerequisites

現在のバケットを設定および識別するためのオプションを管理します。

使用方法: `ucd config [command]`

以下のコマンドを使用できます。

* `clear`: すべてのローカル設定オプションを消去します。
* `set environment [environment_id] --project=[project_id]`: 環境を現在の環境として設定します。
* `set bucket [bucket_id] [flags]`:  指定したバケットを現在の (アクティブな) バケットとして設定します。
* `show`: 現在のローカル設定を表示します。

### entries##set-up-ccd-for-cli

現在のバケットのエントリーを管理します。

使用方法: `ucd entries [command]`

以下のコマンドを使用できます。

* `copy [local_path] [entry file name]`: ローカルファイルから現在のバケットのエントリーを作成します。
* `delete [entry file name]`: 現在のバケットからエントリーを削除します。
* `download [entry file name]`: 現在のバケットからエントリーのコンテンツをダウンロードします。
* `info [entry file name]`: 現在のバケットからエントリー情報を取得します。
* `list`: 現在のバケットのエントリーをリスト表示します。
* `sync [local_dir_path]`: 現在のバケットのローカルディレクトリからエントリーを同期します。
* `update [entry file name]`: 現在のバケットのエントリーを更新します。

> **Tip:**
>
> エントリーの同期コマンドをキャンセルするには、処理中に Ctrl+C を押します。キャンセルの前に同期されたエントリーはアップロードされたままになるため、バケットから削除する必要があります。

### releases##authentication

現在のバケットのリリースを管理します。

使用方法: `ucd releases [command]`

以下のコマンドを使用できます。

* `create`: 現在のバケットの最新バージョンからリリースを作成します。
* `info [release_id]`: 特定のリリースのリリース情報を取得します。
* `list`: 現在のバケットのリリースをリスト表示します。
* `promote [release_id] --target_bucket [bucket_id]`: 指定したリリースを別のバケットに昇格させます。任意の `-n`、`--notes` フラグを使用して注記文字列を追加できます。
* `update [release_id]`: 既存のリリースを更新します。任意の `-n`、`--notes` フラグを使用して注記文字列を追加できます。

バケット名とエントリー名では、大文字と小文字が区別されます。

> **Note:**
>
> `bucket_name` は、作成時にバケットに割り当てるラベルにすぎません。他のすべてのコマンドでは、`bucket_ID` が必要です。これは `buckets list` コマンドを使用するか、[ダッシュボード](./dashboard.md#buckets) で確認できます。

## CLI の例##get-started

* バケットを作成するには、以下のようにします。\
  `$ ucd buckets create [project_id] [bucket_name]`
* バケットを削除するには、以下のようにします。\
  `$ ucd buckets delete [bucket_id]`
* プロジェクトのすべてのバケットをその `bucket_id` も含めてリスト表示するには、以下のようにします。\
  `$ ucd buckets list [project_id]`
* 現在のバケットをアクティブなバケットとして設定するには、以下のようにします。\
  `$ ucd config set bucket [bucket_id]`
* ローカルフォルダーを現在のバケットと同期するには、以下のようにします。\
  `$ ucd entries sync [local_dir_path]`
* 現在のバケット内の全エントリーのリストを表示するには、以下のようにします。\
  `$ ucd entries list`

> **Note:**
>
> 0.11.0 より後のバージョンの CLI では、ほとんどのコマンドに `--environment` フラグを追加する必要があります。
>
> 例:
>
> `ucd buckets list --environment=[environment_id] [PROJECT_ID]`
>
> `config` コマンドを環境に使用して、今後のすべてのコマンドで使用する環境を保存することもできます。
>
> `ucd config set environment [environment_id] --project=[project_id]`
>
> `config` で環境を設定する場合、`--environment` フラグを追加する必要はありません。

コマンドラインインターフェースの使用方法の一連の例については、[CLI での CCD の使用](./cli-walkthrough.md) を参照してください。
