Kubernetes

Helm Values DiffEntenda o efeito de cada sobrescrita

Uma base comum, duas sobrescritas independentes e as configurações resultantes.

Helm Values Diff

Sobrescritas antigas

Mudanças

As três entradas são processadas neste navegador, sem enviar o conteúdo.

Valores de saída começam ocultos. Chaves e caminhos seguem visíveis; entradas e prévias mantêm o original. YAML oculto serve para revisão.

Helm 3.19.0, chart único: base → cada sobrescrita separadamente. Mapas mesclados, listas substituídas e comparadas por índice.

Por entrada: 200.000 caracteres, 20.000 nós, profundidade 60. Relatório: 5.000 mudanças / 4 milhões de caracteres. Cálculo: 5 segundos.

Insira as configurações ou inicie a comparação.

Helm Values Diff ajuda na revisão de arquivos de values quando apagar uma linha faz o valor padrão reaparecer. A alteração no arquivo de ambiente nem sempre representa a remoção da configuração. Compare o resultado efetivo ou examine as sobrescritas originais para identificar exatamente qual declaração mudou.

Por que usar Helm Values Diff

Enxergue a volta dos valores padrão

Helm Values Diff mescla cada versão separadamente com a mesma base. Se replicas não estiver na nova sobrescrita, o número padrão volta a valer. A versão anterior nunca se torna uma camada adicional da versão nova.

Uma árvore comum alimenta duas ramificações independentes; a remoção de uma sobrescrita revela o valor herdado.

Veja a mudança sem divulgar o conteúdo

Os valores reais são comparados antes de serem ocultados. Duas senhas diferentes continuam marcadas como alteradas, mesmo que os marcadores exibidos sejam iguais. Objetos e listas recém-adicionados também têm seus valores internos ocultados.

Dois valores diferentes passam a ficar cobertos, mas o indicador de alteração permanece visível entre eles.

Separe declaração, efeito e exportação

01

Mantenha três entradas independentes

O seletor à esquerda guarda a base do chart e uma sobrescrita completa para cada versão. Um campo vazio equivale a um mapa vazio. Se todos estiverem vazios, a execução manual pede conteúdo. A versão nova não é aplicada por cima da antiga.

02

Escolha a camada da comparação

O modo inicial compara valores efetivos. As sobrescritas originais mostram mudanças de declaração que podem gerar o mesmo resultado. As duas visualizações mescladas sempre apresentam os valores efetivos, independentemente do modo de comparação.

03

Exporte a visualização atualizada

O modo automático espera 350 ms após a última edição. Desative-o para usar Comparar ou Ctrl/Cmd+Enter. Alterar entradas ou opções bloqueia exportações antigas imediatamente. Substituições mostram prévia e contagem de caracteres, com uma etapa de desfazer.

Caminhos e tipos para revisar mudanças

Mapas recursivos e listas substituídas

Mapas mantêm os filhos padrão ausentes na sobrescrita. Um mapa vazio não apaga esses filhos, mas uma lista vazia substitui a lista anterior inteira. false, zero e texto vazio continuam sendo valores válidos.

Ausência não é null

Cada inclusão, remoção ou alteração inclui um caminho JSON Pointer e os tipos anteriores e novos. Um número difere de um texto numérico. Nos caminhos, ~1 representa uma barra e ~0 representa um til; até chaves vazias mantêm sua identidade.

Comparação sem ruído de formatação

Comentários, espaços e ordem das chaves não alteram a comparação estrutural. A ordem das listas importa, e seus resultados são comparados por índice. Inserir no início pode alterar várias posições; não há tentativa de reconhecer movimento ou combinar por nome.

Relatórios completos

O JSON contém modelo, modo, opção de ocultação, todas as diferenças e os dois YAML efetivos. A visualização mesclada exporta apenas a versão escolhida. A tela começa com 50 mudanças e permite mostrar mais; o arquivo sempre contém o resultado completo.

Limites do modelo de prévia

Um chart, uma referência de comportamento
A mesclagem segue Helm 3.19.0 para um chart sem dependências. Não simula subcharts, propagação global, import-values ou condições de dependência. Não executa templates Go, tpl ou lookup, consulta releases ou clusters, nem valida schemas.
Entrada YAML com limites explícitos
Cada entrada aceita um documento YAML 1.2 core com mapa na raiz e chaves de texto. Duplicatas, chaves complexas, diretivas, tags explícitas, âncoras, aliases e << são rejeitados. Use aspas em yes e on. Números precisam seguir a notação decimal JSON, ser finitos e ter inteiros seguros; underflow é rejeitado. Decimais usam binary64.
null depende da chave padrão
Um null na sobrescrita remove a chave padrão correspondente durante a mesclagem recursiva. Em chaves novas, mapas novos ou elementos de listas substitutas, null permanece. Omitir uma chave herda o padrão. Não se trata de apagar todos os valores vazios de uma configuração.
Ocultação não garante anonimato
Todo escalar diferente de null vira um marcador com tipo, inclusive números e booleanos. Chaves, caminhos, estrutura e null continuam visíveis. Editores e prévias de substituição preservam o texto original. YAML com valores ocultos é material de revisão, não configuração pronta para implantação.
Sem resultados parciais
Cada entrada permite 200.000 caracteres, 20.000 nós, profundidade 60 e um milhão de caracteres de caminhos acumulados. O relatório aceita 5.000 mudanças e quatro milhões de caracteres; o cálculo dura até cinco segundos. Exceder limites bloqueia toda a exportação. Não há ordenação de vários -f, interpretação de --set, reuse/reset-values, importação de URL ou preservação da formatação original.

Perguntas sobre Helm Values Diff

Como ver as mudanças antes de executar helm upgrade?

Revise a camada values aqui e depois os manifests renderizados com helm diff ou seu processo de release. Valores iguais não garantem recursos iguais quando templates, versão do chart ou capacidades do cluster mudam.

O que tem prioridade entre o padrão e o arquivo do ambiente?

A sobrescrita do ambiente vence. Em mapas aninhados, apenas filhos não declarados são preenchidos com os valores padrão. Há uma entrada de sobrescrita por versão; organize vários arquivos na ordem real antes de colar o conteúdo.

Por que listas não são mescladas item por item?

Helm substitui a lista inteira naquela chave, sem acrescentar elementos nem buscar objetos pelo nome. Depois disso, o relatório compara os índices dos resultados; essa representação não muda a regra de mesclagem.

Como remover uma chave dos valores padrão?

Defina essa chave como null na sobrescrita. Apenas omiti-la restaura o padrão. Se ela não existir no mapa padrão, null será mantido; um novo valor vazio não equivale à remoção de uma chave existente.

Dá para saber se um segredo mudou sem expô-lo?

Sim. Mantenha a ocultação ativada para preservar a mudança detectada nos valores reais e o tipo. Valores comuns também ficam ocultos. Confira os nomes das chaves e os caminhos antes de compartilhar, pois eles continuam legíveis.

Quer relatar um caso de comparação?

Revise as duas configurações

Use Helm Values Diff para separar a mudança na declaração de seu efeito e salvar a visualização necessária para a revisão.