Campos do ConfigManagement

Nesta página, explicamos os diferentes campos que podem ser definidos no objeto ConfigManagement. É possível usar esse objeto ao configurar o Config Sync usando comandos kubectl.

Configuração para recursos do Config Sync

Chave Descrição
spec.enableMultiRepo Se true, ativa as APIs RootSync e RepoSync. Essas APIs fornecem recursos adicionais do Config Sync, como sincronização de vários repositórios e a sincronização das configurações do Kustomize e Helm O padrão é false.
spec.preventDrift Se true, ativa o webhook de admissão do Config Sync para evitar desvios rejeitando as alterações conflitantes que estão sendo enviadas para clusters ativos. O padrão é false. O Config Sync sempre corrige desvios, independentemente do valor desse campo.
spec.enableLegacyFields (Shutdown in 1.19.0) Se true, ativa o uso de campos spec.git obsoletos no ConfigManagement enquanto ainda usa o modo de vários repositórios. Definir esse campo gera automaticamente um recurso RootSync no cluster.

Configuração para comportamento do objeto ConfigManagement

Chave Descrição
spec.clusterName O nome definido pelo usuário para o cluster usado por ClusterSelectors para agrupar os clusters. Exclusivo em uma instalação do Config Sync. Não é possível configurar esse campo no console do Google Cloud .

Exemplo do objeto ConfigManagement

apiVersion: configmanagement.gke.io/v1
kind: ConfigManagement
metadata:
  name: config-management
spec:
  clusterName: my-cluster
  enableMultiRepo: true

Configuração para repositórios Git (obsoleto)

Chave Descrição
spec.git.gcpServiceAccountEmail A conta de serviço Google Cloud usada para anotar a conta de serviço do Kubernetes do controlador RootSync ou RepoSync. Este campo é usado apenas quando spec.git.secretType é gcpserviceaccount.
spec.git.syncRepo O URL do repositório Git para usar como fonte. Obrigatório.
spec.git.syncBranch A ramificação do repositório com que sincronizar. Padrão: master.
spec.git.policyDir O caminho no repositório Git para o diretório raiz que contém a configuração que você quer sincronizar. Padrão: o diretório raiz do repositório
spec.git.syncWait A duração de tempo entre sincronizações consecutivas. Padrão: 15 s.
spec.git.syncRev Revisão Git (tag ou hash) para check-out. Padrão HEAD.
spec.git.secretType O tipo de secret configurado para acesso ao repositório Git. Um de ssh, cookiefile, token, gcenode, gcpserviceaccount ou none. Obrigatório.
spec.sourceFormat O formato do seu repositório Git. Pode ser unstructured ou hierarchy. Padrão: hierarchy.

Configuração de proxy para o repositório Git

Se as políticas de segurança da sua organização exigirem o roteamento do tráfego por meio de um proxy HTTP(S), use o URI do proxy para configurar o Config Sync para se comunicar com o host Git. O proxy só é compatível com o tipo de autorização cookiefile, none ou token.

Chave Descrição
spec.git.proxy.httpProxy Define uma variável de ambiente HTTP_PROXY usada para acessar o repositório Git.
spec.git.proxy.httpsProxy Define uma variável de ambiente HTTPS_PROXY usada para acessar o repositório Git.

Se os campos httpProxy e httpsProxy forem especificados, httpProxy será ignorado.