1.6. Channels API
1.6.1. 概要
このドキュメントでは、Red Hat Advanced Cluster Management for Kubernetes の Channel リソースを説明します。Channel リソースには、create、query、delete、update の 4 つの要求を使用できます。
1.6.1.1. バージョン情報
バージョン: 2.12.0
1.6.1.2. URI スキーム
BasePath: /kubernetes/apis
Schemes: HTTPS
1.6.1.3. タグ
- channels.apps.open-cluster-management.io: deployable を作成して管理します。
1.6.2. パス
1.6.2.1. チャネルの作成
POST /apps.open-cluster-management.io/v1/namespaces/{namespace}/channels
1.6.2.1.1. 詳細
チャネルを作成します。
1.6.2.1.2. パラメーター
型 | 名前 | 詳細 | スキーマ |
---|---|---|---|
Header |
COOKIE | Authorization: Bearer {ACCESS_TOKEN}。ACCESS_TOKEN はユーザーのアクセストークンに置き換えます。 | string |
Path |
namespace | 使用する namespace (例: default) | string |
Body |
body | 作成する deployable を記述するパラメーター |
1.6.2.1.3. レスポンス
HTTP コード | 詳細 | スキーマ |
---|---|---|
200 | 成功 | コンテンツなし |
403 | アクセス禁止 | コンテンツなし |
404 | リソースが見つからない | コンテンツなし |
500 | 内部サービスエラー | コンテンツなし |
503 | サービスが利用できない | コンテンツなし |
1.6.2.1.4. 消費されるアイテム
-
application/yaml
1.6.2.1.5. タグ
- channels.apps.open-cluster-management.io
1.6.2.1.6. HTTP リクエストの例
1.6.2.1.6.1. 要求の body
{ "apiVersion": "apps.open-cluster-management.io/v1", "kind": "Channel", "metadata": { "name": "sample-channel", "namespace": "default" }, "spec": { "configMapRef": { "kind": "configmap", "name": "info-resource-filter-configmap" }, "pathname": "https://charts.helm.sh/stable", "type": "HelmRepo" } }
1.6.2.2. ターゲット namespace の全チャネルのクエリー
GET /apps.open-cluster-management.io/v1/namespaces/{namespace}/channels
1.6.2.2.1. 詳細
チャネルに対してクエリーを実行して詳細を確認します。
1.6.2.2.2. パラメーター
型 | 名前 | 詳細 | スキーマ |
---|---|---|---|
Header |
COOKIE | Authorization: Bearer {ACCESS_TOKEN}。ACCESS_TOKEN はユーザーのアクセストークンに置き換えます。 | string |
Path |
namespace | 使用する namespace (例: default) | string |
1.6.2.2.3. レスポンス
HTTP コード | 詳細 | スキーマ |
---|---|---|
200 | 成功 | コンテンツなし |
403 | アクセス禁止 | コンテンツなし |
404 | リソースが見つからない | コンテンツなし |
500 | 内部サービスエラー | コンテンツなし |
503 | サービスが利用できない | コンテンツなし |
1.6.2.2.4. 消費されるアイテム
-
application/yaml
1.6.2.2.5. タグ
- channels.apps.open-cluster-management.io
1.6.2.3. namespace の単一チャネルのクエリー
GET /apps.open-cluster-management.io/v1/namespaces/{namespace}/channels/{channel_name}
1.6.2.3.1. 詳細
単一のチャネルに対してクエリーを実行して詳細を確認します。
1.6.2.3.2. パラメーター
型 | 名前 | 詳細 | スキーマ |
---|---|---|---|
Header |
COOKIE | Authorization: Bearer {ACCESS_TOKEN}。ACCESS_TOKEN はユーザーのアクセストークンに置き換えます。 | string |
Path |
channel_name | 問い合わせる deployable の名前 | string |
Path |
namespace | 使用する namespace (例: default) | string |
1.6.2.3.3. レスポンス
HTTP コード | 詳細 | スキーマ |
---|---|---|
200 | 成功 | コンテンツなし |
403 | アクセス禁止 | コンテンツなし |
404 | リソースが見つからない | コンテンツなし |
500 | 内部サービスエラー | コンテンツなし |
503 | サービスが利用できない | コンテンツなし |
1.6.2.3.4. タグ
- channels.apps.open-cluster-management.io
1.6.2.4. Channel の削除
DELETE /apps.open-cluster-management.io/v1/namespaces/{namespace}/channels/{channel_name}
1.6.2.4.1. パラメーター
型 | 名前 | 詳細 | スキーマ |
---|---|---|---|
Header |
COOKIE | Authorization: Bearer {ACCESS_TOKEN}。ACCESS_TOKEN はユーザーのアクセストークンに置き換えます。 | string |
Path |
channel_name | 削除する Channel の名前 | string |
Path |
namespace | 使用する namespace (例: default) | string |
1.6.2.4.2. レスポンス
HTTP コード | 詳細 | スキーマ |
---|---|---|
200 | 成功 | コンテンツなし |
403 | アクセス禁止 | コンテンツなし |
404 | リソースが見つからない | コンテンツなし |
500 | 内部サービスエラー | コンテンツなし |
503 | サービスが利用できない | コンテンツなし |
1.6.2.4.3. タグ
- channels.apps.open-cluster-management.io
1.6.3. 定義
1.6.3.1. チャネル
名前 | スキーマ |
---|---|
apiVersion | string |
kind | string |
metadata | object |
spec |
spec
名前 | 詳細 | スキーマ |
---|---|---|
configMapRef | ObjectReference には参照先のオブジェクトを調査または変更するのに十分な情報が含まれます。 | |
gates | ChannelGate はチャネルにプロモートする基準を定義します。 | |
pathname | string | |
secretRef | ObjectReference には参照先のオブジェクトを調査または変更するのに十分な情報が含まれます。 | |
sourceNamespaces | enum (Namespace、HelmRepo、ObjectBucket、Git、namespace、helmrepo、objectbucket、github) array |
configMapRef
名前 | 詳細 | スキーマ |
---|---|---|
apiVersion | 参照先の API バージョン。 | string |
fieldPath | オブジェクト全体ではなく一部を参照する場合に、この文字列には、desiredState.manifest.containers[2] など、有効な JSON/Go フィールドアクセスステートメントを含める必要があります。たとえば、オブジェクトの参照先が Pod 内のコンテナーの場合には、"spec.containers{name}" などの値に設定されます ("name" はイベントをトリガーしたコンテナー名に置き換えます)。またはコンテナー名が指定されていない場合には、"spec.containers[2]" の値に設定されます (この Pod 内でインデックスが 2 のコンテナー)。この構文が選択された唯一の理由は、オブジェクトの一部の参照を明確に定義するためです。TODO: この設計は最終版ではないため、このフィールドは今後変更になる場合があります。 | string |
kind | 参照先の種類。詳細: https://kubernetes.io/docs/concepts/overview/working-with-objects/kubernetes-objects/ |
name |
参照先の名前。詳細: Names | string |
namespace |
参照先の namespace。詳細: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/ | string |
resourceVersion |
この参照が作成される特定の resourceVersion (ある場合)。詳細: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency | string |
uid |
gates
名前 | 詳細 | スキーマ |
---|---|---|
annotations | k8s の典型的なアノテーション | |
labelSelector | ラベルセレクターとは、一連のリソースに対するラベルクエリー機能です。matchLabels と matchExpressions の結果は AND を使用して結合されます。ラベルセレクターが空の場合は、全オブジェクトをマッチします。ラベルセレクターが null の場合は、どのオブジェクトもマッチしません。 | |
name | string |
annotations
名前 | スキーマ |
---|---|
key | string |
value | string |
labelSelector
名前 | 詳細 | スキーマ |
---|---|---|
matchExpressions | matchExpressions はラベルセレクターの要件のリストです。要件は AND で結合されます。 | matchExpressions array |
matchLabels | matchLabels は、{key,value} ペアのマップです。matchLabels マップの 1 つの {key,value} は matchExpressions の要素と同じで、キーフィールドには "key"、演算子には "In"、値配列には "value" のみが含まれます。要件は AND で結合されます。 | string、string map |
matchExpressions
名前 | 詳細 | スキーマ |
---|---|---|
key | key は、セレクターの適用先のラベルキーです。 | string |
operator | operator はキーと値のセットの関係を表します。有効な演算子は In、NotIn、Exists、および DoesNotExist です。 | string |
values | values は文字列値の配列です。operator が In または NotIn の場合には、values 配列を空白にできません。operator が Exists または DoesNotExist の場合には、values 配列は空白でなければなりません。この配列は、ストラテジーに基づいたマージパッチの適用中に置き換えられます。 | string array |
secretRef
名前 | 詳細 | スキーマ |
---|---|---|
apiVersion | 参照先の API バージョン。 | string |
fieldPath | オブジェクト全体ではなく一部を参照する場合に、この文字列には、desiredState.manifest.containers[2] など、有効な JSON/Go フィールドアクセスステートメントを含める必要があります。たとえば、オブジェクトの参照先が Pod 内のコンテナーの場合には、"spec.containers{name}" などの値に設定されます ("name" はイベントをトリガーしたコンテナー名に置き換えます)。またはコンテナー名が指定されていない場合には、"spec.containers[2]" の値に設定されます (この Pod 内でインデックスが 2 のコンテナー)。この構文が選択された唯一の理由は、オブジェクトの一部の参照を明確に定義するためです。TODO: この設計は最終版ではないため、このフィールドは今後変更になる場合があります。 | string |
kind | 参照先の種類。詳細は、https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds を参照してください。 | string |
name | 参照先の名前。詳細: Names | string |
namespace | 参照先の namespace。詳細: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/ | string |
resourceVersion | この参照が作成される特定の resourceVersion (ある場合)。詳細: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency | string |
uid | 参照先の UID。詳細: UIIDs | string |