> ## Documentation Index
> Fetch the complete documentation index at: https://docs.abbyy.com/llms.txt
> Use this file to discover all available pages before exploring further.

# API リファレンス

> Vantage 3.0 セルフホスト型のインストールを制御する、vantage.abbyy.com/v1alpha1 Vantage カスタムリソースのフィールド リファレンス。

Vantage 3.0 セルフホスト型のインストーラーは、単一の Kubernetes カスタムリソース、つまり `vantage.abbyy.com/v1alpha1` API グループ内の `Vantage` オブジェクトによって制御されます。以下のフィールドが、ユーザーと オペレーター の間の完全な契約を構成します。

オペレーター がこのリソースをどのように利用するかの概要については、[Architecture](/ja/vantage/self-hosted/v3.0/architecture) を参照してください。インストール手順については、[Azure](/ja/vantage/self-hosted/v3.0/providers/azure) または [Self-Managed Kubernetes](/ja/vantage/self-hosted/v3.0/providers/self-managed) を選択してください。

<div id="api-group">
  ## API グループ
</div>

| グループ                | バージョン      | リソース      |
| ------------------- | ---------- | --------- |
| `vantage.abbyy.com` | `v1alpha1` | `Vantage` |

<div id="vantage">
  ## Vantage
</div>

最上位の Vantage リソースです。`vantage-selfhosted` チャートには `Vantage` CR インスタンスが含まれており、そのチャートをインストールした名前空間に作成されます。

| Field        | 型        | 必須  | 説明                                                                            |
| ------------ | -------- | --- | ----------------------------------------------------------------------------- |
| `apiVersion` | `string` | はい  | vantage.abbyy.com/v1alpha1                                                    |
| `kind`       | `string` | はい  | Vantage                                                                       |
| `metadata`   | `object` | はい  | `metadata` field の各 field については、Kubernetes API ドキュメントを参照してください。               |
| `spec`       | `object` | はい  | spec は Vantage の望ましい状態を定義します。[`Vantage.spec`](#vantagespec) を参照してください。        |
| `status`     | `object` | いいえ | status は Vantage の観測された状態を定義します。[`Vantage.status`](#vantagestatus) を参照してください。 |

<div id="vantagespec">
  ## Vantage.spec
</div>

spec は Vantage の望ましい状態を定義します

| Field                | Type      | Required | Description                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| -------------------- | --------- | -------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `databaseProvider`   | `string`  | No       | Vantage サービスで使用するデータベースエンジンです。指定できる値は `SqlServer` と `PostgreSQL` です。値では大文字と小文字が区別されます。既定値: `SqlServer`。                                                                                                                                                                                                                                                                                                                                       |
| `dnsRecord`          | `string`  | Yes      | dnsRecord は Vantage インストール用の DNS レコードです。形式: `hostname`。                                                                                                                                                                                                                                                                                                                                                                                       |
| `mailFrom`           | `string`  | Yes      | mailFrom は送信メールの差出人として使用するメールアドレスです。形式: `email`。                                                                                                                                                                                                                                                                                                                                                                                              |
| `platformAdminEmail` | `string`  | Yes      | platformAdminEmail はプラットフォーム管理者のメールアドレスです。形式: `email`。                                                                                                                                                                                                                                                                                                                                                                                        |
| `secrets`            | `object`  | Yes      | secrets はシークレットプロバイダーを選択して設定します。指定するプロバイダーは 1 つだけです。[`secrets`](#vantagespecsecrets) を参照してください。                                                                                                                                                                                                                                                                                                                                               |
| `updatePolicy`       | `object`  | Yes      | updatePolicy は オペレーター が Vantage のアップグレードをどのように処理するかを制御します。`manual: {}` を使用してください。自動更新はまだサポートされていません。[`updatePolicy`](#vantagespecupdatepolicy) を参照してください。                                                                                                                                                                                                                                                                                     |
| `vantageVersion`     | `string`  | Yes      | vantageVersion はインストールする Vantage のバージョンです。                                                                                                                                                                                                                                                                                                                                                                                                    |
| `workloads`          | `object`  | Yes      | workloads は、チャートとイメージに関するデータを含む ConfigMap を設定します。[`workloads`](#vantagespecworkloads) を参照してください。                                                                                                                                                                                                                                                                                                                                              |
| `idReadingEnabled`   | `boolean` | No       | idReadingEnabled は ID 読み取り機能を有効にします。既定値: `false`。                                                                                                                                                                                                                                                                                                                                                                                             |
| `keda`               | `object`  | No       | keda は KEDA ベースの自動スケーリングを設定します。[`keda`](#vantagespeckeda) を参照してください。                                                                                                                                                                                                                                                                                                                                                                          |
| `ociMigration`       | `object`  | No       | ociMigration は、インストール前にソースレジストリから宛先へ artifact をコピーする設定です。migration をスキップするには、これを完全に省略するか、enabled=false を設定します。有効にする場合は destination が必須です。[`ociMigration`](#vantagespecocimigration) を参照してください。                                                                                                                                                                                                                                                |
| `reportingEnabled`   | `boolean` | No       | reportingEnabled は SQL Server のレポート機能を有効にします。`databaseProvider` が `PostgreSQL` の場合は、必ず `false` のままにする必要があります。既定値: `false`。                                                                                                                                                                                                                                                                                                                    |
| `serviceAccountName` | `string`  | No       | serviceAccountName は Vantage workload に使用する ServiceAccount の名前です。既定の ServiceAccount を使用する場合は省略します。既定値: `default`。Vantage workload のイメージプルもここで設定します。この ServiceAccount の `imagePullSecrets` にレジストリの pull シークレットを追加してください。[Azure image pull access](/ja/vantage/self-hosted/v3.0/providers/azure#image-pull-access) または [self-managed registry access](/ja/vantage/self-hosted/v3.0/providers/self-managed#configure-registry-access) を参照してください。 |
| `smtp`               | `object`  | No       | smtp は SMTP mail server を設定します。指定しない場合は、メールプロバイダーとして SendGrid が使用されます。[`smtp`](#vantagespecsmtp) を参照してください。                                                                                                                                                                                                                                                                                                                                   |
| `storage`            | `object`  | No       | storage は高度なストレージオプションを設定します。省略した場合は、既定で Azure Blob (`storage*ConnectionString` エイリアスを使用) が使用されます。[`storage`](#vantagespecstorage) を参照してください。                                                                                                                                                                                                                                                                                                 |
| `techcore`           | `object`  | No       | techcore には TechCore 処理エンジンの設定が含まれます。[`techcore`](#vantagespectechcore) を参照してください。                                                                                                                                                                                                                                                                                                                                                            |

<Note>
  **`secrets` の検証**: `has(self.kubernetes) != has(self.azure)`: 指定するプロバイダーはちょうど 1 つだけです。
</Note>

<Warning>
  **`updatePolicy` の検証**: `!has(self.auto)`: 自動更新はまだサポートされていません。
</Warning>

<Note>
  **`updatePolicy` の検証**: `(has(self.auto) ? 1 : 0) + (has(self.manual) ? 1 : 0) == 1`: 指定する更新ポリシーはちょうど 1 つだけです。
</Note>

<Note>
  **`ociMigration` の検証**: `!has(self.enabled) || self.enabled == false || has(self.destination)`: ociMigration が有効な場合は destination が必須です。
</Note>

<Warning>
  **データベースとレポート機能の検証**: PostgreSQL は `PostgreSQL` という厳密な値で選択します。レポート機能は SQL Server 専用です。`databaseProvider` が `PostgreSQL` で、かつ `reportingEnabled` が `true` の場合、この resource は拒否されます。
</Warning>

<Note>
  **`techcore` の検証**: `!self.keepPreviousVersion || has(self.previousVersion)`: keepPreviousVersion が true の場合は previousVersion が必須です。
</Note>

<div id="vantagespeckeda">
  ## Vantage.spec.keda
</div>

keda は、サポートされている Vantage ワークロード向けに KEDA ベースのオートスケーリングを設定します。有効にする前に、KEDA と必要な Prometheus サービスをインストールしてください。

| Field     | 型         | 必須  | 説明                                                              |
| --------- | --------- | --- | --------------------------------------------------------------- |
| `enabled` | `boolean` | いいえ | サポートされているワークロード用の KEDA `ScaledObject` リソースを有効にします。既定値: `false`。 |

現在の Vantage ワークロード チャートでは、KEDA 2.17.x が必要です。一部の `ScaledObject` リソースは `http://prometheus-operated.observability.svc.cluster.local:9090` をクエリします。詳細は [Autoscaling with KEDA](/ja/vantage/self-hosted/v3.0/performance/autoscaling) を参照してください。

<div id="vantagespecsmtp">
  ## Vantage.spec.smtp
</div>

smtp は SMTP メールサーバーを設定します。SendGrid の任意の代替手段であり、設定されている場合にのみ使用されます。

| Field      | 型         | 必須  | 説明                                                  |
| ---------- | --------- | --- | --------------------------------------------------- |
| `host`     | `string`  | はい  | host は SMTP メールサーバーのホスト名です                          |
| `login`    | `string`  | いいえ | SMTP 認証用の login                                     |
| `password` | `string`  | いいえ | SMTP 認証用の password                                  |
| `port`     | `integer` | いいえ | port は SMTP メールサーバーのポートです。既定値: `587` · 形式: `int32`。 |
| `useSSL`   | `boolean` | いいえ | useSSL は SMTP 接続で TLS を有効にします。既定値: `false`。         |

<div id="vantagespecworkloads">
  ## Vantage.spec.workloads
</div>

workloads は、チャートとイメージに関するデータを格納する ConfigMap を設定します

| Field                 | 型        | 必須 | 説明                                                                        |
| --------------------- | -------- | -- | ------------------------------------------------------------------------- |
| `configMap`           | `string` | はい | `configMap` は、workloads データを格納する ConfigMap の名前です                          |
| `metadataTemplateKey` | `string` | はい | `metadataTemplateKey` は、チャートのインストールに関するメタデータ テンプレートを格納する ConfigMap 内のキーです |
| `secretsKey`          | `string` | はい | `secretsKey` は、シークレットのメタデータを格納する ConfigMap 内のキーです                         |
| `workloadsKey`        | `string` | はい | `workloadsKey` は、チャートとイメージのリストを格納する ConfigMap 内のキーです                      |

<div id="vantagespecsecrets">
  ## Vantage.spec.secrets
</div>

secrets は、アプリケーションのシークレット (データベース接続文字列、API key、証明書) を Vantage ワークロードに提供するために使用されるシークレット プロバイダーを設定します。指定するプロバイダーは必ず1つだけです。概念モデルとエイリアスの一覧全体については、[Secrets and Key Vault](/ja/vantage/self-hosted/v3.0/secrets-and-keyvault) を参照してください。

| Field        | 型        | 必須 | Description                                                                                                               |
| ------------ | -------- | -- | ------------------------------------------------------------------------------------------------------------------------- |
| `azure`      | `object` | No | azure は、Azure Key Vault と Secrets Store CSI driver を使用してシークレットを設定します。[`azure`](#vantagespecsecretsazure) を参照してください。       |
| `kubernetes` | `object` | No | kubernetes は、インストール名前空間内の既存の Kubernetes `Secret` resource を使用します。[`kubernetes`](#vantagespecsecretskubernetes) を参照してください。 |

<div id="vantagespecsecretsazure">
  ## Vantage.spec.secrets.azure
</div>

azure は、Secrets Store CSI Driver を介して Azure Key Vault をシークレットのソースとして設定します。

| field                    | 型                   | 必須  | 説明                                                                                                                                                                                                              |
| ------------------------ | ------------------- | --- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `keyVaultName`           | `string`            | はい  | keyVaultName は、シークレットを格納する Azure Key Vault です。                                                                                                                                                                  |
| `tenantId`               | `string`            | はい  | tenantId は、Key Vault を所有する Azure AD テナントです。                                                                                                                                                                     |
| `clientId`               | `string`            | いいえ | clientId は、Key Vault への読み取りアクセス権を持つユーザー割り当てマネージド ID の Azure AD クライアント ID です。`identityMode` が `workloadIdentity` (デフォルト) の場合に必須です。                                                                               |
| `identityMode`           | `enum`              | いいえ | identityMode は、CSI driver が Azure に対して認証する方法を選択します。デフォルト: `workloadIdentity` · 列挙値: `workloadIdentity, podIdentity, vmManagedIdentity`。                                                                         |
| `objects`                | `map[string]object` | いいえ | objects は、シークレットのエイリアスから特定の Key Vault オブジェクトへのマッピングを任意で上書きします。エイリアスがこの map に存在しない場合は、エイリアス自体が Key Vault オブジェクト名として使用され、オブジェクトは型 `secret` として取得されます。[`objects`](#vantagespecsecretsazureobjectsalias) を参照してください。 |
| `userAssignedIdentityID` | `string`            | いいえ | userAssignedIdentityID は、`identityMode` が `vmManagedIdentity` の場合に使用するユーザー割り当てマネージド ID のクライアント ID です。                                                                                                           |

<div id="vantagespecsecretsazureobjectsalias">
  ## Vantage.spec.secrets.azure.objects\[alias]
</div>

`AzureSecretObjectConfig` は、シークレット エイリアスの参照先となる単一の Key Vault オブジェクトを表します。

| Field           | 型        | 必須  | 説明                                                                           |
| --------------- | -------- | --- | ---------------------------------------------------------------------------- |
| `objectName`    | `string` | はい  | objectName は Azure Key Vault 内のオブジェクト名です。                                    |
| `objectType`    | `enum`   | いいえ | objectType は Key Vault オブジェクトの種別です。既定値: `secret` · 列挙値: `secret, key, cert`。 |
| `objectVersion` | `string` | いいえ | objectVersion は特定の Key Vault オブジェクトのバージョンを固定指定します。既定では最新バージョンが使用されます。        |

<div id="vantagespecsecretskubernetes">
  ## Vantage.spec.secrets.kubernetes
</div>

kubernetes は、インストール先の名前空間にある既存の Kubernetes `Secret` リソースを使用します。

| Field     | 型                   | 必須  | 説明                                                                                                                                                                         |
| --------- | ------------------- | --- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `objects` | `map[string]object` | いいえ | `objects` は使用する Kubernetes シークレットを定義し、シークレットのエイリアスを `Secret` 名にマッピングします。定義されていない場合は、デフォルトのシークレット名が使用されます。[`objects`](#vantagespecsecretskubernetesobjectsalias) を参照してください。 |

<div id="vantagespecsecretskubernetesobjectsalias">
  ## Vantage.spec.secrets.kubernetes.objects\[alias]
</div>

各エントリは、シークレットのエイリアスを Kubernetes `Secret` 名にマッピングします。

| Field        | 型        | 必須 | 説明                                                         |
| ------------ | -------- | -- | ---------------------------------------------------------- |
| `secretName` | `string` | はい | `secretName` は、インストール先の名前空間内にある Kubernetes `Secret` の名前です。 |

<div id="vantagespecstorage">
  ## Vantage.spec.storage
</div>

storage は高度なストレージ オプションを構成します。省略すると、Vantage はデフォルトの Azure Blob バックエンドを使用し、`storage*ConnectionString` シークレット エイリアスに定義された接続文字列を読み取ります。詳細は [Secrets and Key Vault](/ja/vantage/self-hosted/v3.0/secrets-and-keyvault#storage) を参照してください。

| Field    | 型        | 必須  | 説明                                                                                     |
| -------- | -------- | --- | -------------------------------------------------------------------------------------- |
| `custom` | `object` | いいえ | `custom` はカスタム ストレージ バックエンドを構成します。詳細は [`custom`](#vantagespecstoragecustom) を参照してください。 |

<div id="vantagespecstoragecustom">
  ## Vantage.spec.storage.custom
</div>

custom は、カスタムのストレージバックエンド (Kubernetes の `StorageClass` による PVC ベース) を設定します。

<Note>
  カスタムのストレージバックエンドで Vantage をインストールする前に、参照先の Kubernetes `StorageClass` がクラスターですでに設定されている必要があります。
</Note>

| Field          | 型               | 必須  | Description                                                           |
| -------------- | --------------- | --- | --------------------------------------------------------------------- |
| `size`         | `int or string` | Yes | size は PVC のサイズを定義します。デフォルト: `300Gi`。                                 |
| `storageClass` | `string`        | Yes | storageClass は、カスタム ストレージバックエンドのボリュームをマウントする PVC に使用するストレージクラスを定義します。 |

<div id="vantagespecupdatepolicy">
  ## Vantage.spec.updatePolicy
</div>

updatePolicy は、オペレーターによる Vantage のアップグレード方法を制御します。

| Field    | 型        | 必須  | Description                                                                               |
| -------- | -------- | --- | ----------------------------------------------------------------------------------------- |
| `auto`   | `object` | いいえ | auto はバージョンの自動アップグレードを有効にします。まだ実装されていません。[`auto`](#vantagespecupdatepolicyauto)を参照してください。 |
| `manual` | `object` | いいえ | manual は自動アップグレードを無効にします。アップグレードは、オペレーター Helm チャートの新しいバージョンをインストールして行います。                 |

<div id="vantagespecupdatepolicyauto">
  ## Vantage.spec.updatePolicy.auto
</div>

auto は、バージョンの自動アップグレードを有効にします。現時点では未実装です。

| Field        | 型        | 必須 | 説明                                                     |
| ------------ | -------- | -- | ------------------------------------------------------ |
| `releaseURL` | `string` | はい | `releaseURL` は、Vantage のリリースバンドルの取得元 URL です。形式: `uri`。 |

<div id="vantagespecocimigration">
  ## Vantage.spec.ociMigration
</div>

ociMigration は、インストール前にソース レジストリ から宛先へ artifacts をコピーするための設定です。
OCI 移行をスキップするには、この設定を完全に省略するか、enabled=false を設定します。
有効にする場合、destination は必須です。

| Field                | Type              | Required | Description                                                                                                                                                                                 |
| -------------------- | ----------------- | -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `concurrency`        | `integer`         | Yes      | concurrency は、並列にコピーする artifacts の数です。既定値: `5` · 最小値: `1`。                                                                                                                                  |
| `destination`        | `object`          | No       | destination は、artifacts のコピー先です。[`destination`](#vantagespecocimigrationdestination) を参照してください。                                                                                             |
| `enabled`            | `boolean`         | No       | enabled は OCI 移行を有効にします。既定値: `true`。                                                                                                                                                        |
| `imagePullSecrets`   | `[]object`        | No       | imagePullSecrets は、この名前空間で OCI 移行 job の実行に使用される operator イメージを pull するために使う、同じ名前空間内の secrets への参照の省略可能なリストです。[`imagePullSecrets`](#vantagespecocimigrationimagepullsecretsindex) を参照してください。 |
| `labels`             | `map[string]JSON` | No       | labels は、OCI 移行 job と pod テンプレートに適用する labels の set です。文字列以外の値は \[fmt.Sprint] で文字列に変換されます                                                                                                    |
| `serviceAccountName` | `string`          | No       | serviceAccountName は、OCI 移行 job の実行に使用する ServiceAccount の名前です。job にイメージ pull アクセスを付与するには、この ServiceAccount の `imagePullSecrets` に使用する レジストリ pull secret を追加してください。                          |
| `sources`            | `[]object`        | No       | sources は、artifacts のコピー元となる registries (ABBYY 提供のソース レジストリ) にアクセスするための credentials です。最大長は 20 です。[`sources`](#vantagespecocimigrationsourcesindex) を参照してください。                              |

<Note>
  **`destination` の validation**: !self.host.contains('/'): host にはパスを含めないでください。レジストリ パスには repository field を使用してください
</Note>

<Note>
  **`destination` の validation**: !self.host.contains('://'): host にはスキーム (例: https\://) を含めないでください
</Note>

<Note>
  **migration job のイメージ pull アクセス**: レジストリ pull secret を持つ ServiceAccount (`serviceAccountName`) で job を実行するか、ソース エントリで secret (`sources[].credentialsRef.name`) を参照してください。Azure では、AKS managed identity に `AcrPull` を付与する方法が、pull secrets を使うより簡単な代替手段です。ArgoCD から使用する レジストリ へのアクセスは、ArgoCD repository connection として別途設定します。[Image pull access](/ja/vantage/self-hosted/v3.0/providers/azure#image-pull-access) および [Connect ArgoCD to your OCI registry](/ja/vantage/self-hosted/v3.0/providers/azure#connect-argocd-to-your-oci-registry) を参照してください。
</Note>

<div id="vantagespecocimigrationdestination">
  ## Vantage.spec.ociMigration.destination
</div>

destination は、アーティファクトのコピー先です。

| field              | 型        | 必須  | 説明                                                                                                                                                                                                                           |
| ------------------ | -------- | --- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `host`             | `string` | はい  | host は、レジストリのホスト名と省略可能なポートです (例: registry.example.com、registry.example.com:5000)                                                                                                                                             |
| `credentialsRef`   | `object` | いいえ | credentialsRef は、`username` キーと `password` キーを含むシークレット、または kubernetes.io/dockerconfigjson 型のシークレットを参照します。指定した場合は、username/password より優先されます。[`credentialsRef`](#vantagespecocimigrationdestinationcredentialsref) を参照してください。 |
| `password`         | `string` | いいえ | レジストリ認証用の password (平文。本番環境では credentialsRef を使用してください)                                                                                                                                                                      |
| `repository`       | `string` | いいえ | repository は、アーティファクト用のレジストリのパス/名前空間です (例: `my-registry-namespace`、`vantage/images`) 。                                                                                                                                       |
| `username`         | `string` | いいえ | レジストリ認証用の username (平文。本番環境では credentialsRef を使用してください)                                                                                                                                                                      |
| `workloadIdentity` | `object` | いいえ | workloadIdentity は、レジストリにアクセスするためにワークロードの identity (Kubernetes サービスアカウント) を使用するための設定を定義します。[`workloadIdentity`](#vantagespecocimigrationdestinationworkloadidentity) を参照してください。                                              |

<div id="vantagespecocimigrationdestinationcredentialsref">
  ## Vantage.spec.ociMigration.destination.credentialsRef
</div>

credentialsRef は、username キーと password キーを含む Secret、または kubernetes.io/dockerconfigjson 型の Secret を参照します。
指定した場合は、username/password より優先されます。

| Field  | 型        | 必須 | 説明                  |
| ------ | -------- | -- | ------------------- |
| `name` | `string` | はい | name は Secret の名前です |

<div id="vantagespecocimigrationdestinationworkloadidentity">
  ## Vantage.spec.ociMigration.destination.workloadIdentity
</div>

workloadIdentity は、レジストリにアクセスするためにワークロードの ID (Kubernetes の サービスアカウント) を使用するための設定を定義します。

| Field           | 型        | 必須  | 説明                                                                          |
| --------------- | -------- | --- | --------------------------------------------------------------------------- |
| `audience`      | `string` | いいえ | audience は、service acccount トークンを OAuth アクセストークンに交換するために使用するエンドポイントです。      |
| `clientId`      | `string` | いいえ | clientId は、service acccount トークンを OAuth アクセストークンに交換するために使用する client ID です。  |
| `tokenEndpoint` | `string` | いいえ | tokenEndpoint は、service acccount トークンを OAuth アクセストークンに交換するために使用するエンドポイントです。 |

<div id="vantagespecocimigrationimagepullsecretsindex">
  ## Vantage.spec.ociMigration.imagePullSecrets\[index]
</div>

LocalObjectReference には、同じ名前空間内で参照先の object を特定するために十分な情報が含まれています。

| field  | 型        | 必須  | 説明                                                                                                                                                                                                                                                         |
| ------ | -------- | --- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name` | `string` | いいえ | 参照先の名前です。この field は実質的には必須ですが、後方互換性のため空にすることも許可されています。ここが空になっているこの型のインスタンスは、ほぼ確実に誤りです。詳細: [https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names) |

<div id="vantagespecocimigrationsourcesindex">
  ## Vantage.spec.ociMigration.sources\[index]
</div>

ContainerRegistryConfig は、コンテナーレジストリの接続設定を定義します。

| field              | 型        | 必須  | 説明                                                                                                                                                                                                                                                                                                   |
| ------------------ | -------- | --- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `host`             | `string` | はい  | host は、レジストリのホスト名と省略可能なポートです (例: registry.example.com、registry.example.com:5000) 。                                                                                                                                                                                                                   |
| `credentialsRef`   | `object` | いいえ | credentialsRef は、Username キーと password キーを含むシークレット、または kubernetes.io/dockerconfigjson 型のシークレットを参照します。指定した場合は、username/password より優先されます。ここで pull secret を参照する方法は、そのシークレットを持つ サービスアカウント で migration job を実行する代替手段です。[`credentialsRef`](#vantagespecocimigrationsourcesindexcredentialsref) を参照してください。 |
| `password`         | `string` | いいえ | レジストリ認証用の password (平文。production では credentialsRef を使用)                                                                                                                                                                                                                                             |
| `repository`       | `string` | いいえ | repository は、artifacts 用のレジストリパス/名前空間です (例: `my-registry-namespace`、`vantage/images`) 。                                                                                                                                                                                                              |
| `username`         | `string` | いいえ | レジストリ認証用の username (平文。production では credentialsRef を使用)                                                                                                                                                                                                                                             |
| `workloadIdentity` | `object` | いいえ | workloadIdentity は、レジストリへのアクセスに workload の identity (Kubernetes サービスアカウント) を使用するための設定を定義します。[`workloadIdentity`](#vantagespecocimigrationsourcesindexworkloadidentity) を参照してください。                                                                                                                    |

<div id="vantagespecocimigrationsourcesindexcredentialsref">
  ## Vantage.spec.ociMigration.sources\[index].credentialsRef
</div>

credentialsRef は、username キーと password キーを含む Secret、または `kubernetes.io/dockerconfigjson` 型の Secret を参照します。
指定した場合、username/password より優先されます。

| Field  | 型        | 必須 | 説明                  |
| ------ | -------- | -- | ------------------- |
| `name` | `string` | はい | name は Secret の名前です |

<div id="vantagespecocimigrationsourcesindexworkloadidentity">
  ## Vantage.spec.ociMigration.sources\[index].workloadIdentity
</div>

workloadIdentity は、レジストリへのアクセスにワークロードの ID (Kubernetes サービスアカウント)
を使用するための設定を定義します。

| Field           | 型        | 必須  | 説明                                                                   |
| --------------- | -------- | --- | -------------------------------------------------------------------- |
| `audience`      | `string` | いいえ | audience は、サービスアカウント トークンを OAuth アクセストークンと交換するために使用するエンドポイントです。      |
| `clientId`      | `string` | いいえ | clientId は、サービスアカウント トークンを OAuth アクセストークンと交換するために使用するクライアント ID です。   |
| `tokenEndpoint` | `string` | いいえ | tokenEndpoint は、サービスアカウント トークンを OAuth アクセストークンと交換するために使用するエンドポイントです。 |

<div id="vantagespectechcore">
  ## Vantage.spec.techcore
</div>

techcore には、TechCore processing engine の構成が含まれています

| Field                 | 型         | 必須  | 説明                                                                                                                    |
| --------------------- | --------- | --- | --------------------------------------------------------------------------------------------------------------------- |
| `version`             | `integer` | はい  | `version` は、デプロイする TechCore のバージョンです (例: 4) 。最小値: `1`。                                                                |
| `keepPreviousVersion` | `boolean` | いいえ | `keepPreviousVersion` は、アップグレード時に前のバージョンを保持します。Default: `false`。                                                      |
| `nnTrainingWorkers`   | `object`  | いいえ | `nnTrainingWorkers` は、ニューラルネットワーク学習ワーカーを設定します。[`nnTrainingWorkers`](#vantagespectechcorenntrainingworkers) を参照してください。 |
| `previousVersion`     | `integer` | いいえ | `previousVersion` は、アップグレード元のバージョンです。`keepPreviousVersion` が true の場合は必須です。最小値: `1`。                                  |

<div id="vantagespectechcorenntrainingworkers">
  ## Vantage.spec.techcore.nnTrainingWorkers
</div>

nnTrainingWorkers はニューラル ネットワークの学習ワーカーを構成します

| Field     | 型         | 必須  | 説明                                                  |
| --------- | --------- | --- | --------------------------------------------------- |
| `enabled` | `boolean` | いいえ | `enabled` はニューラル ネットワークの学習ワーカーを有効にします。既定値: `false`。 |
| `gpu`     | `boolean` | いいえ | `gpu` は学習ワーカーの GPU アクセラレーションを有効にします。既定値: `false`。   |

<div id="vantagestatus">
  ## Vantage.status
</div>

status は、Vantage の観測された状態を定義します

| Field                     | 型          | 必須  | 説明                                                                                                                                                                                                                                                                                                                                                |
| ------------------------- | ---------- | --- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `availableVersions`       | `[]string` | いいえ | availableVersions は、リリース URL から利用可能なバージョンの List です。                                                                                                                                                                                                                                                                                               |
| `conditions`              | `[]object` | いいえ | conditions は Vantage リソースの現在の状態を表します。各 condition は一意の型を持ち、リソースの特定の側面のステータスを反映します。標準的な condition の型には、次のものがあります。 - "Available": リソースは完全に機能しています - "Progressing": リソースは作成中または更新中です - "Degraded": リソースが目的の状態に到達できなかった、またはその状態を維持できませんでした 各 condition のステータスは、True、False、または Unknown のいずれかです。[`conditions`](#vantagestatusconditionsindex) を参照してください。 |
| `degradationReasons`      | `[]object` | いいえ | degradationReasons は、インストールの劣化状態の理由を表します。[`degradationReasons`](#vantagestatusdegradationreasonsindex) を参照してください。                                                                                                                                                                                                                                 |
| `installedVantageVersion` | `string`   | いいえ | installedVantageVersion は、現在実行中のバージョンです。                                                                                                                                                                                                                                                                                                          |
| `observedGeneration`      | `integer`  | いいえ | observedGeneration は、コントローラーによって「処理済み」の spec の generation です。形式: `int64`。                                                                                                                                                                                                                                                                         |

<Note>
  Skill のインストールは、`status.conditions[]` には反映されず、ArgoCD 経由でも表示されない、個別の Kubernetes job として実行されます。job の実行中も Vantage は使用できます。監視コマンドについては、[Lifecycle](/ja/vantage/self-hosted/v3.0/lifecycle#skill-installation-runs-separately) を参照してください。
</Note>

<div id="vantagestatusconditionsindex">
  ## Vantage.status.conditions\[index]
</div>

Condition には、この APIリソースの現在の状態の一側面に関する詳細が含まれます。

| Field                | 型         | 必須  | 説明                                                                                                                                                                                                                           |
| -------------------- | --------- | --- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `lastTransitionTime` | `string`  | はい  | lastTransitionTime は、condition のステータスがある状態から別の状態に最後に遷移した時刻です。これは、基になる condition が変更された時点である必要があります。それが不明な場合は、API field が変更された時刻を使用してもかまいません。形式: `date-time`。                                                                 |
| `message`            | `string`  | はい  | message は、遷移の詳細を示す、人が読める形式のメッセージです。空文字列の場合もあります。                                                                                                                                                                             |
| `reason`             | `string`  | はい  | reason には、condition の最後の遷移理由を示すプログラム上の識別子が含まれます。特定の condition 型の生成元では、この field に期待される値やその意味、またそれらの値が保証された API と見なされるかどうかを定義できます。値は CamelCase の文字列である必要があります。この field は空にできません。                                               |
| `status`             | `enum`    | はい  | condition のステータスで、True、False、Unknown のいずれかです。列挙値: `True, False, Unknown`。                                                                                                                                                    |
| `type`               | `string`  | はい  | CamelCase または foo.example.com/CamelCase 形式の condition の型です。                                                                                                                                                                  |
| `observedGeneration` | `integer` | いいえ | observedGeneration は、condition が設定される根拠となった .metadata.generation を表します。たとえば、現在の .metadata.generation が 12 で、.status.conditions\[x].observedGeneration が 9 の場合、その condition はインスタンスの現在の状態に対して古くなっています。形式: `int64` · 最小値: `0`。 |

<div id="vantagestatusdegradationreasonsindex">
  ## Vantage.status.degradationReasons\[index]
</div>

DegradationReason は、インストール内の 1 つの component が機能低下している理由を表します。

| Field       | 型        | 必須 | Description                                                                                    |
| ----------- | -------- | -- | ---------------------------------------------------------------------------------------------- |
| `component` | `string` | はい | component は、機能低下しているインストール内の part です。                                                          |
| `message`   | `string` | はい | message は、component の機能低下について人が読んで理解できる説明です。                                                   |
| `reason`    | `string` | はい | reason には、component の機能低下の理由を示す、プログラムで使用する identifier が含まれます。値は CamelCase の string である必要があります。 |
