1.4.4.2. チャネル YAML 表

フィールド説明

apiVersion

必須。この値は apps.open-cluster-management.io/v1 に設定します。

kind

必須。この値は Channel に設定して、リソースがチャネルであることを指定します。

metadata.name

必須。チャネルの名前。

metadata.namespace

必須。チャネルの namespace。各チャネルには Git チャネルを除き、一意の namespace が必要です。

spec.sourceNamespaces

任意。チャネルコントローラーが取得してチャネルにプロモートする新規または更新された deployable がないかを監視する namespace を指定してします。

spec.type

必須。チャネルタイプ。サポート対象のタイプは HelmRepoGit および ObjectBucket (コンソールのオブジェクトストレージ) です。

spec.pathname

HelmRepoGitObjectBucket チャネルには必須。HelmRepo チャネルの場合は、値を Helm リポジトリーの URL に設定します。ObjectBucket チャネルの場合は、値をオブジェクトストレージの URL に設定します。Git チャネルの場合は、値を Git リポジトリーの HTTPS URL に設定します。

spec.secretRef.name

任意。リポジトリーまたはチャートへのアクセスなど、認証に使用する Kubernetes Secret リソースを指定します。シークレットは、HelmRepoObjectBucket および Git タイプのチャネルでのみ認証に使用できます。

spec.gates

任意。チャネル内での deployable のプロモート要件を定義します。要件が設定されていない場合には、チャネルの namespace またはソースに追加された deployable がそのチャネルにプロモートされます。gates は、ObjectBucket チャネルタイプだけに適用され HelmRepoGit チャネルタイプに適用されません。

spec.gates.annotations

任意。チャネルのアノテーション。チャネル内では deployable に同じアノテーションを追加する必要があります。

metadata.labels

任意。チャネルのラベル。

チャネルの定義構造は、以下の YAML コンテンツの例のようになります。

apiVersion: apps.open-cluster-management.io/v1
kind: Channel
metadata:
  name: predev-ch
  namespace: ns-ch
  labels:
    app: nginx-app-details
spec:
  type: HelmRepo
  pathname: https://kubernetes-charts.storage.googleapis.com/