Comportamento do campo de configuração da gcloud

A flag --config no comando update aceita campos para configurar o comportamento do Config Sync em clusters de membros. A flag --fleet-default-member-config nos comandos update e enable aceita o mesmo conjunto de campos para configurar o comportamento padrão da frota do Config Sync.

Ao contrário da flag --config no comando apply, que define uma representação da CLI do Google Cloud dos campos da API de configuração subjacente, as flags --config e --fleet-default-member-config no comando update adotam diretamente o esquema dos campos da API Spec e MembershipSpec, respectivamente. A flag --fleet-default-member-config no comando enable também foi migrada da representação da CLI do Google Cloud para o esquema de campo da API MembershipSpec na faixa de lançamento alpha, mas a representação anterior é compatível com versões anteriores.

Esta página documenta o processamento adicional específico da CLI gcloud dos campos de configuração no esquema de campo da API antes que as flags --config e --fleet-default-member-config os enviem para a API.

Valores de campo padrão

Campo Descrição
configSync.enabled Se o usuário especificar o campo configSync, a instalação do Config Sync será padrão para true.
version Para a flag --config, a versão do Config Sync usa o valor atual na configuração de associação ou, se não estiver configurada, a versão do Config Sync instalada no cluster de associação. Use o comando describe para conferir esses valores. Se o Config Sync não estiver instalado no cluster de membros, a gcloud CLI deixará a versão não definida na solicitação de API. A API vai definir a versão do Config Sync como a mais recente se configSync.enabled for true para --config e --fleet-default-member-config.

Campos sem suporte

As flags --config e --fleet-default-member-config nos comandos update e enable geram um erro se algum dos seguintes campos legados estiver definido:

  • configSync.metricsGcpServiceAccountEmail
  • policyController
  • hierarchyController
  • binauthz
  • management

Exemplos de arquivos de configuração

Nesta seção, mostramos exemplos de configurações que podem ser transmitidas às flags --config e --fleet-default-member-config nos comandos update e enable. Essas flags são compatíveis com camelCase e snake_case.

Em comparação com os exemplos na página de comandos apply, as configurações a seguir não contêm os campos applySpecVersion e spec. O campo configSync.deploymentOverrides[].deploymentName é spec.configSync.deploymentOverrides[].name para o comando apply. Outros campos, incluindo os que não estão nos exemplos a seguir, também têm nomes diferentes.

O exemplo a seguir mostra uma configuração básica:

configSync:
  enabled: true
  sourceFormat: unstructured
  git:
    syncRepo: https://github.com/GoogleCloudPlatform/anthos-config-management-samples
    syncBranch: main
    secretType: none
    policyDir: config-sync-quickstart/multirepo/root

O exemplo a seguir mostra uma configuração mais complexa:

configSync:
  enabled: true
  stopSyncing: true
  sourceFormat: unstructured
  git:
    syncRepo: https://github.com/GoogleCloudPlatform/anthos-config-management-samples
    syncBranch: main
    secretType: none
    policyDir: config-sync-quickstart/multirepo/root
  deploymentOverrides:
  - deploymentName: reconciler-manager
    deploymentNamespace: config-management-system
    containers:
    - containerName: reconciler-manager
      cpuRequest: 50m
      cpuLimit: 100m
      memoryRequest: 256Mi
      memoryLimit: 512Mi