Verifique se a confirmação mais recente foi aplicada e reconciliada pelo Config Sync
Se você ativou as APIs RootSync e RepoSync e quer usar o Config Sync em um pipeline de implantação contínua (CD), é necessário verificar se sua confirmação mais recente no repositório Git foi aplicada ao cluster e reconciliada com sucesso. Nesta página, mostramos como verificar o status nos objetos do Config Sync.
A verificação contém as etapas a seguir. Qualquer falha em uma etapa significa que a confirmação não foi aplicada ou reconciliada. É possível colocar as etapas em um loop de novas tentativas com um tempo limite pré-selecionado.
Verifique se a confirmação mais recente no repositório Git foi aplicada. Isso precisa ser feito verificando o campo
.status.sync
no objeto RootSync ou RepoSync. É possível acessar o campo.status.sync
pelo seguinte comando# get .status.sync of a RootSync object kubectl get rootsync ROOT_SYNC -n config-management-system -o jsonpath='{.status.sync}' # get .status.sync of a RepoSync object kubectl get reposync REPO_SYNC -n REPO_SYNC_NAMESPACE -o jsonpath='{.status.sync}'
Substitua
ROOT_SYNC
pelo nome do objeto RootSync que você quer pesquisar.Substitua
REPO_SYNC
pelo nome do objeto RepoSync que você quer pesquisar.Substitua
REPO_SYNC_NAMESPACE
pelo nome do objeto RepoSync que você quer pesquisar.- O valor do campo
.status.sync.commit
precisa ser igual à confirmação mais recente. - O campo
.status.sync
não tem nenhum "erro".
- O valor do campo
Verifique se os recursos da confirmação mais recente estão todos reconciliados. Para cada objeto RootSync ou RepoSync, há um objeto ResourceGroup exclusivo que captura o status de reconciliação dos recursos gerenciados declarados no repositório Git. O objeto ResourceGroup tem o mesmo namespace e nome do objeto RootSync ou RepoSync. Por exemplo, para o objeto RootSync com o nome
root-sync
no namespaceconfig-management-system
, o objeto ResourceGroup correspondente também éroot-sync
no namespaceconfig-management-system
. Quando a confirmação mais recente é aplicada com sucesso, o objeto ResourceGroup contém o grupo, o tipo, o namespace e o nome dos recursos gerenciados da confirmação mais recente. Execute o seguinte comando para receber um objeto ResourceGroup.# get the ResourceGroup object for a RootSync object kubectl get resourcegroup ROOT_SYNC -n config-management-system -o yaml # get the ResourceGroup object for a RepoSync object kubectl get resourcegroup REPO_SYNC -n REPO_SYNC_NAMESPACE -o yaml
Substitua
ROOT_SYNC
pelo nome do objeto ResourceGroup que você quer pesquisar.Substitua
REPO_SYNC
pelo nome do objeto ResourceGroup que você quer pesquisar.Substitua
REPO_SYNC_NAMESPACE
pelo nome do objeto ResourceGroup que você quer pesquisar.- Primeiro, verifique se o
.status.observedGeneration
é igual ao valor do campo.metadata.generation
no objeto ResourceGroup. - Em seguida, verifique se as condições
Stalled
eReconciling
têmstatus
como"False"
. - Por fim, verifique se cada item no campo
.status.resourceStatuses
tem o status comoCurrent
.
- Primeiro, verifique se o