RootSync フィールドと RepoSync フィールド

このページでは、RootSyncRepoSyncResourceGroup オブジェクトのフィールドのリファレンスを示します。これらのオブジェクトの仕組みの詳細については、Config Sync のアーキテクチャをご覧ください。

RootSync フィールドと RepoSync フィールド

RootSync と RepoSync のリソース オブジェクトには同じフィールドがありますが、次の RootSync 専用フィールドを除きます。

  • spec.sourceFormat
  • spec.helm.namespace
  • spec.helm.deployNamespace
  • spec.override.roleRefs

ソース形式の構成

キー 説明
spec.sourceFormat sourceFormat には、リポジトリのフォーマット方法を指定します。省略可。
このフィールドの検証では大文字と小文字が区別されます。
  • RootSync オブジェクトの場合、値は hierarchy または unstructured にする必要があります。指定しない場合、デフォルト値は hierarchy ですが、unstructured をおすすめします。
詳しくは、非構造化形式と階層型の形式に関するガイドをご覧ください。

ソースタイプの構成

キー 説明
spec.sourceType sourceType には、信頼できる情報源のタイプを指定します。gitocihelm のいずれかにする必要があります。省略可。
指定しない場合は git に設定します。このフィールドの検証では大文字と小文字が区別されます。

Git リポジトリの構成

キー 説明
spec.git.auth Git リポジトリへのアクセスのために構成された Secret のタイプ。sshcookiefilegcenodegcpserviceaccounttoken、または none にする必要があります。このフィールドの検証では大文字と小文字が区別されます。必須。
spec.git.gcpServiceAccountEmail RootSync または RepoSync コントローラの Kubernetes サービス アカウントにアノテーションを付けるために使用される Google Cloud サービス アカウント。このフィールドは、spec.git.authgcpserviceaccount の場合にのみ使用されます。
spec.git.branch 同期元となるリポジトリのブランチ。このフィールドは省略可能で、デフォルト値は master です。Config Sync バージョン 1.17.0 以降では、spec.git.revision フィールドを使用してブランチ名を指定することをおすすめします。spec.git.revision フィールドと spec.git.branch フィールドの両方が指定されている場合、spec.git.revisionspec.git.branch よりも優先されます。
spec.git.dir 同期先の構成を含むルート ディレクトリへの Git リポジトリの絶対パス。デフォルトはリポジトリのルート ディレクトリ(/)です
spec.git.period 連続する同期の間隔。デフォルト: 15s
spec.git.repo 同期元の Git リポジトリの URL。必須。
spec.git.revision 同期元となる Git リビジョン(ブランチ、タグ、または commit)。このフィールドは省略可能で、デフォルト値は HEAD です。Config Sync バージョン 1.17.0 以降では、spec.git.revision フィールドにブランチ名を指定することもできます。バージョン 1.17.0 以降のハッシュを使用する場合、省略形ではなく、完全なハッシュにする必要があります。
spec.git.secretRef.name Git の信頼できるソースへの接続に使用される Secret の名前。
spec.git.noSSLVerify1 noSSLVerify は、SSL 証明書の検証を有効にするか無効にするかを指定します。デフォルト: false。
noSSLVerify が true に設定されている場合、Git は SSL 証明書の検証をスキップします。
spec.git.caCertSecretRef.name1 認証局(CA)証明書を含む Secret の名前。このフィールドを指定する場合、git サーバーはこの CA によって発行された証明書を使用する必要があります。CA 証明書は「cert」という名前の鍵で Secret に保存する必要があります。

Git リポジトリのプロキシ構成

組織のセキュリティ ポリシーでトラフィックを HTTP(S) プロキシ経由でルーティングする必要がある場合は、プロキシの URI を使用して Git ホストと通信するように Config Sync を構成できます。

キー 説明
spec.git.proxy プロキシを使用して Git リポジトリへのアクセスを構成するスキームを含むプロキシ URL。例: https://proxy.internal.business.co:443
Git プロキシは、httpshttp、省略形の URL を受け入れますが、セキュリティに関する懸念があるため httpおすすめしません
http または省略形の URL を使用する場合は、プロキシ サーバーと Git ホスト間の通信が安全であることを確認してください。
このフィールドは、spec.git.authcookiefilenone、または token の場合にのみ有効です。

OCI イメージの構成

Config Sync では、OCI レイヤが tar 形式または tar+gzip 形式で圧縮されている必要があります。

他の形式(tar+bz2 など)は Config Sync で認識されません。有効な REPO からサポートされていない形式の OCI イメージに切り替えると、マネージド リソースがエラーなしでプルーニングされます。

キー 説明
spec.oci.auth OCI イメージへのアクセスのために構成された認証のタイプ。gcenodek8sserviceaccountgcpserviceaccountまたは none にする必要があります。このフィールドの検証では大文字と小文字が区別されます。必須。
spec.oci.gcpServiceAccountEmail RootSync または RepoSync コントローラの Kubernetes サービス アカウントにアノテーションを付けるために使用される Google Cloud サービス アカウント。このフィールドは、spec.oci.authgcpserviceaccount の場合にのみ使用されます。
spec.oci.dir 同期先の構成を含むルート ディレクトリへの OCI イメージの絶対パス。デフォルトはイメージのルート ディレクトリ(/)です。
spec.oci.period 連続する同期の間隔。デフォルト: 15s
spec.oci.image 同期元の OCI イメージの URL。必須。
spec.oci.caCertSecretRef.name1

認証局(CA)証明書を含む Secret の名前。このフィールドを指定する場合、OCI サーバーはこの CA によって発行された証明書を使用する必要があります。CA 証明書は「cert」という名前の鍵で Secret に保存する必要があります。

このフィールドは、バージョン 1.18.0 以降でサポートされています。

Helm リポジトリの構成

キー 説明
spec.helm.auth Helm リポジトリへのアクセスのために構成された認証のタイプ。token は、gcenodek8sserviceaccountgcpserviceaccountまたは none にする必要がある。このフィールドの検証では大文字と小文字が区別されます。 必須。
spec.helm.gcpServiceAccountEmail RootSync または RepoSync コントローラの Kubernetes サービス アカウントにアノテーションを付けるために使用される Google Cloud サービス アカウント。このフィールドは、spec.helm.authgcpserviceaccount の場合にのみ使用されます。
spec.helm.secretRef.name Helm リポジトリへのアクセスに使用される Secret の名前。このフィールドは、spec.helm.authtoken の場合にのみ使用されます。
spec.helm.repo 同期元の Helm リポジトリの URL。必須。
spec.helm.chart Helm チャートの名前。必須。
spec.helm.version

Helm チャートのバージョン番号。デフォルト: 最新バージョン。

1.16.0 より前のバージョンの Config Sync ではバージョン フィールドを使用できますが、サポートされるのは静的バージョンのみで、グラフが再 pull されることはありません。Config Sync バージョン 1.16.0 以降では、バージョン フィールドに Config Sync で最新版が pull されるバージョンの範囲として静的な値を指定できます。また、空白のままにしておいて Config Sync が semver に従った最新のグラフであると示すこともできます。最新版を指定するために範囲を指定するか、空白のままにしておくと、Config Sync ではデフォルトでグラフが 1 時間ごとに再 pull されます。Config Sync バージョン 1.16.1 以降では、spec.helm.period フィールドを使用して再 pull 期間を構成できます。バージョンがリテラル文字列で「latest」と指定されている場合は、バージョン範囲や空白のバージョンと同様に、spec.helm.period に従ってグラフが再 pull されます。

バージョン範囲の構文は、Helm CLI でサポートされているバージョン範囲の構文と同じです。

範囲としてバージョンを指定するか、値を空のままにすると、多数のバージョンがある大規模なグラフでは CPU 使用率が高くなる可能性があります。次の例のように、spec.override を使用して helm-sync コンテナの CPU リクエストを増やせます。


    spec:
      override:
        resources:
        - containerName: helm-sync
          cpuRequest: "200m"
    
spec.helm.period

Config Sync バージョン 1.16.1 以降では、spec.helm.period は Config Sync がグラフを再 pull するまで待機する時間です。

デフォルト値は 1 時間です。このフィールドには、「30s」(30 秒)や「5m」(5 分)などの文字列値を指定できます。詳しくは、有効な入力に関する Go のドキュメントをご覧ください。

グラフのバージョンが範囲の場合は、リテラルタグ「latest」を使用するか、Config Sync が最新バージョンを pull する必要があることを示すために空のままにすると、spec.helm.period に従ってグラフが再 pull されます。グラフ バージョンが 1 つの静的バージョンとして指定されている場合は、グラフは再 pull されません。

spec.helm.releaseName Helm リリースの名前。
spec.helm.namespace これは spec.helm.deployNamespace とは相互に排他的です。
namespace は、リリースのターゲット名前空間を設定します。このフィールドは RootSync オブジェクトでのみ使用されます。テンプレートに namespace: {{ .Release.Namespace }} を含むリソースの Namespace のみが設定されます。spec.helm.namespace で指定された値は、Helm テンプレートで宣言された Release.Namespace の値としてのみ使用されます。テンプレートに namespace: {{ .Release.Namespace }} がないリソースには、Namespace default を使用します。デフォルトは default です。
spec.helm.deployNamespace これは spec.helm.namespace とは相互に排他的です。
deployNamespace には、グラフをデプロイする名前空間を指定します。このフィールドの設定には、kpt set-namespace 関数が利用されます。これにより、Config Sync が、名前空間スコープのリソースの metadata.namespace、Namespace オブジェクトの metadata.name、一部の特別なリソースタイプでの名前空間参照など、グラフのリソースの namespace フィールドを置き換えます。
deployNamespace が設定されていない場合、metadata.namespace が設定されていないリソースはデフォルトの名前空間にデプロイされます。
spec.helm.values

チャートに付随するデフォルト値の代わりに使用する値。デフォルトの values.yaml と同じ形式で値を設定します。次に例を示します。


values:
  foo:
    bar: val1
  quz:
  - val2
  - val3

valuesFileRefs も指定されている場合、values のフィールドによって valuesFileRefs のフィールドがオーバーライドされます。

詳細については、Helm のマニフェストの例をご覧ください。

spec.helm.includeCRDs Helm テンプレートが CustomResourceDefinitions を生成するかどうかを指定します。デフォルト: false
spec.helm.valuesFileRefs

チャートに付随するデフォルト値の代わりに、使用する値を表すクラスタ内のオブジェクトへの参照のリスト。ConfigMaps のみがサポートされています。ConfigMap は不変で、RootSync または RepoSync と同じ名前空間に存在する必要があります。

ConfigMap は変更できません。同期後に valuesFile を変更するには、別の名前で ConfigMap を作成して RootSync または RepoSync の を更新する必要があります。spec.valuesFileRefs.name

複数の値ファイルを指定した場合、後のファイルの重複したキーで前のファイルの値がオーバーライドされます。これは、複数の値ファイルを Helm CLI に渡すことと同じです。spec.helm.values も指定されている場合、values のフィールドによって valuesFileRefs のフィールドがオーバーライドされます。

リストの各項目は、以下のように指定する必要があります。

  • name(必須): ConfigMap オブジェクトの名前
  • dataKey(省略可): 値を読み取るオブジェクトのデータキー。デフォルト: values.yaml

このフィールドは、バージョン 1.16.0 以降でサポートされています。

値を変更する方法の例については、Helm チャートを同期するをご覧ください。

spec.helm.caCertSecretRef.name1

認証局(CA)証明書を含む Secret の名前。このフィールドを指定する場合、Helm サーバーはこの CA によって発行された証明書を使用する必要があります。CA 証明書は「cert」という名前の鍵で Secret に保存する必要があります。

このフィールドは、バージョン 1.18.0 以降でサポートされています。

ルートまたは Namespace Reconciler のリソース リクエストと上限をオーバーライドするための構成

git-syncoci-synchelm-synchydration-controllerreconciler の各コンテナをオーバーライドできます。部分的なオーバーライドは可能です。リソース リクエストまたは上限のオーバーライド値が指定されていない場合は、リクエストまたは上限のデフォルトのリソース値が使用されます。

Autopilot クラスタの場合、Config Sync はリソース上限のオーバーライドを無視します。アノテーションで宣言された対応する調整済みの出力よりも高いリソース リクエストがある場合か、アノテーションで宣言された対応する入力よりも少ないリソース リクエストが存在している場合にのみ、リソース リクエストのオーバーライドが適用されます。詳細については、Config Sync のクラスタ要件をご覧ください。

キー 説明
spec.override.resources1 コンテナ リソースのリクエストと上限のオーバーライドのリスト。省略可。
リストの各項目には、次の 3 つのフィールドが含まれます。
  • containerName: このフィールドは、git-syncoci-synchelm-synchydration-controllerreconciler のいずれかです。
  • cpuRequest(オプション)
  • cpuLimit(オプション)
  • memoryRequest(オプション)
  • memoryLimit(オプション)

リソースのリクエストまたは上限のオーバーライド値が指定されていない場合は、リクエストまたは上限のデフォルトのリソース値が使用されます。

ルートまたは Namespace Reconciler のコンテナのログレベルをオーバーライドするための構成

ログレベルのオーバーライド値が設定されていない場合、ログレベルはデフォルト値で構成されます。デフォルトが 5 である git-sync コンテナを除いて、RootSync または RepoSync の Reconciler にあるすべてのコンテナでデフォルトのログレベルは 0 です。許容されるログレベルのオーバーライド値は 0~10 です。

キー 説明
spec.override.logLevels コンテナログ レベルのオーバーライド値のリスト。省略可。
リストの各項目には、次の 2 つのフィールドが含まれます。
  • containerName: このフィールドは、git-syncoci-synchelm-synchydration-controllerreconciler のいずれかです。
  • logLevel

コンテナのログレベルのオーバーライド値が指定されていない場合は、デフォルトのログレベル値が使用されます。

取得する Git commit 数の構成

キー 説明
spec.override.gitSyncDepth1 gitSyncDepth を使用すると、取得する Git commit の数をオーバーライドできます。
0 以上の値を指定してください。
このフィールドが 0 の場合、Config Sync はフルクローンを作成します。0 より大きい場合は、シャロー クローンを作成します。
このフィールドを指定しない場合は、Config Sync によって自動的に構成されます。

リソースレベルのステータスをキャプチャするための構成

キー 説明
spec.override.statusMode1 statusMode は、リソースレベルのステータスのキャプチャを有効または無効にできます。
デフォルト値は enabled です。
リソースレベルのステータスのキャプチャを無効にするには、このフィールドを disabled に設定します。

調整タイムアウトをオーバーライドするための構成

キー 説明
spec.override.reconcileTimeout1 reconcileTimeout を使用すると、適用グループ内のリソースが調整されるまでの待機時間のしきい値をオーバーライドできます。commit 内のリソースは、依存関係に基づいて複数の適用グループに属する場合があります。
デフォルトのタイムアウトは 5m です。
このフィールドの値を文字列で指定します(例: 30s5m)。

API サーバーへのリクエストのタイムアウトをオーバーライドするための構成

キー 説明
spec.override.apiServerTimeout1 apiServerTimeout を使用すると、API サーバーへのリクエストのタイムアウトをオーバーライドできます。デフォルトのタイムアウトは、1.16.0 より前のバージョンでは 5s、バージョン 1.16.0 以降のバージョンでは 15s です。
このフィールドの値を文字列で指定します(例: 30s5m)。

レンダリング プロセスでのシェルアクセスの構成

キー 説明
spec.override.enableShellInRendering1 enableShellInRendering は、レンダリング プロセスでシェルアクセスを有効にするかどうかを指定します。Kustomize のリモートベースにはシェルアクセスが必要です。このフィールドを true に設定すると、レンダリング プロセスでのシェルアクセスが有効になり、公開リポジトリからリモートベースを pull できます。
デフォルト値は false です。

名前空間に関する戦略の構成(RootSync のみ)

キー 説明
spec.override.namespaceStrategy1 namespaceStrategy は、ソースで宣言された名前空間スコープ オブジェクトの不足している Namespace 構成ファイルを Reconciler がどのように処理するかを制御します。unstructured sourceFormat を使用する場合にのみ適用されます。
  • implicit: Reconciler は、Namespace が存在しない場合は、ソースで宣言されていない場合でも、Namespace を暗黙的に作成します。暗黙の Namespace は、削除防止アノテーションを使用して作成され、Config Sync によって管理されます。
  • explicit: Reconciler は、ソースで明示的に宣言された Namespace のみを作成します。

デフォルト値は implicit です。

RBAC バインディングの構成(RootSync のみ)

キー 説明
spec.override.roleRefs1 roleRefs は、バインディングを作成する Role または ClusterRole のリストです。リストの各項目には、次のフィールドが含まれます。
  • kind(必須): RBAC リソースの種類を指します。指定できる値は RoleClusterRole. です。
  • name(必須): Role リソースまたは ClusterRole リソースの名前。
  • namespace(省略可): RoleBinding を作成する Namespace を示します。ClusterRole オブジェクトの場合は、RoleBinding または ClusterRoleBinding のどちらが作成されるかを決定します。Role オブジェクトでは、Role と同じ Namespace に設定する必要があります。

設定しない場合は、cluster-admin への ClusterRoleBinding が作成されます。

オブジェクトのステータス

キー 説明
status.observedGeneration Config Sync によって最後に監視されて操作された RootSync または RepoSync リソースの仕様の世代(metadata.generation)。この値は metadata.generation(API サーバーが仕様のミューテーションによって更新される整数)と比較できます。
status.reconciler 同期リソースに対応する Reconciler プロセスの名前。
status.source.gitStatus.repo 取得される Git リポジトリの URL。
status.source.gitStatus.revision 取得される Git リビジョン(タグ、commit、またはハッシュ)。
status.source.gitStatus.branch 取得されるリポジトリの Git ブランチ。
status.source.gitStatus.dir 同期している構成を含むルート ディレクトリへの Git リポジトリ内の絶対パス。
status.source.ociStatus.image 取得中の OCI イメージの URL。
status.source.ociStatus.dir 同期している構成を含むルート ディレクトリへの OCI イメージ内の絶対パス。
status.source.helmStatus.repo 取得される Helm リポジトリの URL。
status.source.helmStatus.version 取得される Helm チャートのバージョン。
status.source.helmStatus.chart 取得される Helm チャートの名前。
status.source.commit ソース URL から取得された、最新の commit またはダイジェストのハッシュ。
status.source.errors 信頼できるソースの構成ファイルの読み取りと解析中に発生したエラー。過剰な数のエラーが存在する場合は、Config Sync によってエラーが切り詰められるため、発生したすべてのエラーが含まれない場合があります。
status.source.errorSummary.totalCount 信頼できるソースから構成ファイルを読み取って解析する際に発生したエラーの合計数を追跡する整数。
status.source.errorSummary.truncated status.source.errors フィールドに、信頼できるソースからの構成ファイルの読み取りと解析中に発生したすべてのエラーが含まれているかどうかを示すブール値。
status.source.errorSummary.errorCountAfterTruncation status.source.errors フィールドのエラー数を追跡する整数。
status.rendering.gitStatus.repo レンダリングされる Git リポジトリの URL。
status.rendering.gitStatus.revision レンダリングされる Git リビジョン(タグ、commit、またはハッシュ)。
status.rendering.gitStatus.branch レンダリングされるリポジトリの Git ブランチ。
status.rendering.gitStatus.dir レンダリングされている構成を含むルート ディレクトリへの Git リポジトリ内の絶対パス。
status.rendering.ociStatus.image レンダリングされる OCI イメージの URL。
status.rendering.ociStatus.dir レンダリングしている構成を含むルート ディレクトリへの OCI イメージ内の絶対パス。
status.rendering.helmStatus.repo レンダリングされる Helm リポジトリの URL。
status.rendering.helmStatus.version レンダリングされる Helm チャートのバージョン。
status.rendering.helmStatus.chart レンダリングされる Helm チャートの名前。
status.rendering.commit レンダリングされた最新の commit またはダイジェストのハッシュ。この値は、エラーによって commit またはダイジェストが部分的に同期されている場合でも更新されます。
status.rendering.errors status.rendering.commit で示される変更からのリソースのレンダリング プロセス中に発生したエラーのリスト。エラーが多すぎる場合、Config Sync によってエラーが切り詰められるため、発生したすべてのエラーが含まれない場合があります。
status.rendering.errorSummary.totalCount 信頼できるソースからの構成ファイルのレンダリング プロセス中に発生したエラーの総数を追跡する整数。
status.rendering.errorSummary.truncated status.rendering.errors フィールドに、信頼できるソースからの構成ファイルのレンダリング プロセス中に発生したすべてのエラーが含まれているかどうかを示すブール値。
status.rendering.errorSummary.errorCountAfterTruncation status.rendering.errors フィールドのエラー数を追跡する整数。
status.sync.gitStatus.repo 同期される Git リポジトリの URL。
status.sync.gitStatus.revision 同期される Git リビジョン(タグ、commit、またはハッシュ)。
status.sync.gitStatus.branch 同期されるリポジトリの Git ブランチ。
status.sync.gitStatus.dir 同期している構成を含むルート ディレクトリへの Git リポジトリ内の絶対パス。
status.sync.ociStatus.image 同期される OCI イメージの URL。
status.sync.ociStatus.dir 同期している構成を含むルート ディレクトリへの OCI イメージ内の絶対パス。
status.sync.helmStatus.repo 同期される Helm リポジトリの URL。
status.sync.helmStatus.version 同期される Helm チャートのバージョン。
status.sync.helmStatus.chart 同期される Helm チャートの名前。
status.sync.commit クラスタに同期された最新の commit またはダイジェストのハッシュ。この値は、エラーによって commit またはダイジェストが部分的に同期されている場合でも更新されます。
status.sync.errors status.sync.commit で示される変更からリソースを適用する際に発生したエラーのリスト。エラーが多すぎる場合、Config Sync によってエラーが切り詰められるため、発生したすべてのエラーが含まれない場合があります。
status.sync.errorSummary.totalCount 信頼できるソースからの構成ファイルを適用する際に発生したエラーの合計数を追跡する整数。
status.sync.errorSummary.truncated status.sync.errors フィールドに、信頼できるソースから構成ファイルを適用する際に発生したすべてのエラーが含まれているかどうかを示すブール値。
status.sync.errorSummary.errorCountAfterTruncation status.sync.errors フィールドのエラー数を追跡する整数。
status.conditions RootSync オブジェクトまたは RepoSync オブジェクトの現在の状態を追跡するための条件のリスト。
条件の type フィールドが Reconciling または Stalled の場合:
  • 条件の errors フィールドは、RootSync オブジェクトまたは RepoSync オブジェクトの調整中に発生したエラーを追跡します。
  • 条件の errorSummary フィールドは、条件の errors フィールドのエラーを要約します。
  • 条件の errorsSourceRefs フィールドは空です。
条件のタイプが Syncing の場合:
  • 条件の errors フィールドは空です。
  • 条件の errorsSourceRefs フィールドは、エラーの発生元を追跡します。エラーの発生元は、status.rendering.errorsstatus.source.errorsstatus.sync.errors のいずれかです。
  • 条件の errorSummary フィールドは、errorsSourceRefs フィールドで参照されるエラーを要約します。

1 Google Cloud コンソールまたは Google Cloud CLI を使用してインストールした後に RootSync 構成ファイルを作成した場合は、このフィールドを上書きできます。

ResourceGroup フィールド

仕様とステータス フィールド

キー 説明
spec.resources RepoSync CR または RootSync CR で指定されている Git リポジトリからクラスタに適用されるリソースの識別子(グループ、種類、Namespace、名前)のリスト。省略可。
リスト内の各項目は、groupkindnamespacename の 4 つのフィールドで構成されます。

ステータス フィールド

キー 説明
status.observedGeneration ResourceGroup コントローラによって最後に監視され、操作された RootSync または RepoSync リソースの仕様の世代(metadata.generation)。この値は metadata.generation(API サーバーが仕様のミューテーションによって更新される整数)と比較できます。
status.conditions 現在の ResourceGroup で観測された最新の条件。条件には、ReconcilingStalled の 2 種類があります。Reconciling タイプ条件が true の場合、現在の ResourceGroup は調整中であることを意味します。Stalled タイプ条件が true の場合、調整が停止していることを意味します。両方が false の場合は、現在の ResourceGroup が調整され、ステータスが最新であることを意味します。
status.resourceStatuses .spec.resources に含まれるリソースのステータスのリスト。各項目には、リソースの識別子(グループ、種類、名前空間、名前)とステータスが含まれます。ステータスは、InProgressCurrentFailedTerminatingNotFoundUnknown のいずれかです。

管理対象外のルート同期フィールド

RootSync という名前の root-sync の以下のフィールドは、Hub サービスによって管理されず、任意の Kubernetes クライアントで編集できます。

キー 説明
spec.git.noSSLVerify noSSLVerify は、SSL 証明書の検証を有効にするか無効にするかを指定します。デフォルト: false
noSSLVerifytrue に設定されている場合、Git は SSL 証明書の検証をスキップします。
spec.git.caCertSecretRef.name 認証局(CA)証明書を含む Secret の名前。このフィールドを指定する場合、Git サーバーはこの CA によって発行された証明書を使用する必要があります。CA 証明書は「cert」という名前の鍵で Secret に保存する必要があります。
spec.override.resources コンテナ リソースのリクエストと上限のオーバーライドのリスト。省略可。
リストの各項目には、次の 3 つのフィールドが含まれます。
  • containerName: このフィールドは、git-syncoci-synchydration-controllerreconciler のいずれかです。
  • cpuRequest(オプション)
  • cpuLimit(オプション)
  • memoryRequest(オプション)
  • memoryLimit(オプション)

リソースのリクエストまたは上限のオーバーライド値が指定されていない場合は、リクエストまたは上限のデフォルトのリソース値が使用されます。
spec.override.gitSyncDepth gitSyncDepth を使用すると、取得する Git commit の数をオーバーライドできます。
0 以上の値を指定してください。
このフィールドが 0 の場合、Config Sync はフルクローンを作成します。0 より大きい場合は、シャロー クローンを作成します。
このフィールドを指定しない場合は、Config Sync によって自動的に構成されます。
spec.override.statusMode statusMode は、リソースレベルのステータスのキャプチャを有効または無効にできます。
デフォルト値は enabled です。
リソースレベルのステータスのキャプチャを無効にするには、このフィールドを disabled に設定します。
spec.override.reconcileTimeout reconcileTimeout を使用すると、適用グループ内のリソースが調整されるまでの待機時間のしきい値をオーバーライドできます。commit 内のリソースは、依存関係に基づいて複数の適用グループに属する場合があります。
デフォルトのタイムアウトは 5m です。
このフィールドの値を文字列で指定します(例: 30s5m)。
spec.override.enableShellInRendering enableShellInRendering は、レンダリング プロセスでシェルアクセスを有効にするかどうかを指定します。Kustomize のリモートベースにはシェルアクセスが必要です。このフィールドを true に設定すると、レンダリング プロセスでのシェルアクセスが有効になり、公開リポジトリからリモートベースを pull できます。
デフォルト値は false です。

RootSync オブジェクトのマネージド フィールドと非マネージド フィールドの詳細については、フリート サービスで RootSync オブジェクトを管理する方法をご覧ください。

CR の例

次のセクションでは、RootSync CR と RepoSync CR の例を示します。

RootSync CR

次の例は、RootSync オブジェクトを示しています。

# root-sync.yaml
apiVersion: configsync.gke.io/v1beta1
kind: RootSync
metadata:
  name: root-sync
  namespace: config-management-system
spec:
  sourceType: git
  sourceFormat: unstructured
  git:
    repo: https://github.com/GoogleCloudPlatform/anthos-config-management-samples
    branch: init
    dir: config-sync-quickstart/multirepo/root
    auth: none
    period: 30s

RepoSync CR

次の例は、RepoSync オブジェクトを示しています。

# repo-sync.yaml
apiVersion: configsync.gke.io/v1beta1
kind: RepoSync
metadata:
  name: repo-sync
  namespace: gamestore
spec:
  sourceType: git
  sourceFormat: unstructured
  git:
    repo: https://github.com/GoogleCloudPlatform/anthos-config-management-samples
    branch: init
    dir: config-sync-quickstart/multirepo/root
    auth: none
    period: 30s

次のステップ