如何将 Helm 模板与现有 deployment/release 进行比较?
How do I diff a Helm template against an existing deployment/release?
看起来 Helm 3 使这变得更加困难:https://github.com/databus23/helm-diff/issues/176
但我发现使用 helm-diff 插件或只是这样做:helm template releaseName chart | kubectl diff -f - | bat -l diff -
我看到所有资源都是新的,旁边有“+”。这是为什么?
我运行这些命令:
# upgrade
helm upgrade --install --create-namespace \
--namespace derps -f helm/deploy-values.yaml \
--set 'parentChart.param1=sdfsdfsdfdsf' \
--set 'parentChart.param2=sdfsdfsdfdsf' \
--set 'parentChart.param3=sdfsdfsdfdsf' \
--set 'parentChart.param4=sdfsdfsdfdsf' \
--set 'parentChart.param5=sdfsdfsdfdsf' \
myapp helm/mychart
# make no changes and try to diff
helm template \
--namespace derps -f helm/deploy-values.yaml \
--set 'parentChart.param1=sdfsdfsdfdsf' \
--set 'parentChart.param2=sdfsdfsdfdsf' \
--set 'parentChart.param3=sdfsdfsdfdsf' \
--set 'parentChart.param4=sdfsdfsdfdsf' \
--set 'parentChart.param5=sdfsdfsdfdsf' \
myapp helm/mychart | kubectl diff -f - | bat -l diff -
我得到的输出显示整个清单是新的 - 这是为什么?
您可能还需要 -n derps
差异。如果没记错的话,helm template --namespace
实际上并没有注入值。
你试过了吗:
helm template \
--namespace derps --no-hooks --skip-tests \
-f helm/deploy-values.yaml \
--set 'parentChart.param1=sdfsdfsdfdsf' \
--set 'parentChart.param2=sdfsdfsdfdsf' \
--set 'parentChart.param3=sdfsdfsdfdsf' \
--set 'parentChart.param4=sdfsdfsdfdsf' \
--set 'parentChart.param5=sdfsdfsdfdsf' \
myapp helm/mychart | kubectl diff --namespace derps -f - | bat -l diff -
看起来 Helm 3 使这变得更加困难:https://github.com/databus23/helm-diff/issues/176
但我发现使用 helm-diff 插件或只是这样做:helm template releaseName chart | kubectl diff -f - | bat -l diff -
我看到所有资源都是新的,旁边有“+”。这是为什么?
我运行这些命令:
# upgrade
helm upgrade --install --create-namespace \
--namespace derps -f helm/deploy-values.yaml \
--set 'parentChart.param1=sdfsdfsdfdsf' \
--set 'parentChart.param2=sdfsdfsdfdsf' \
--set 'parentChart.param3=sdfsdfsdfdsf' \
--set 'parentChart.param4=sdfsdfsdfdsf' \
--set 'parentChart.param5=sdfsdfsdfdsf' \
myapp helm/mychart
# make no changes and try to diff
helm template \
--namespace derps -f helm/deploy-values.yaml \
--set 'parentChart.param1=sdfsdfsdfdsf' \
--set 'parentChart.param2=sdfsdfsdfdsf' \
--set 'parentChart.param3=sdfsdfsdfdsf' \
--set 'parentChart.param4=sdfsdfsdfdsf' \
--set 'parentChart.param5=sdfsdfsdfdsf' \
myapp helm/mychart | kubectl diff -f - | bat -l diff -
我得到的输出显示整个清单是新的 - 这是为什么?
您可能还需要 -n derps
差异。如果没记错的话,helm template --namespace
实际上并没有注入值。
你试过了吗:
helm template \
--namespace derps --no-hooks --skip-tests \
-f helm/deploy-values.yaml \
--set 'parentChart.param1=sdfsdfsdfdsf' \
--set 'parentChart.param2=sdfsdfsdfdsf' \
--set 'parentChart.param3=sdfsdfsdfdsf' \
--set 'parentChart.param4=sdfsdfsdfdsf' \
--set 'parentChart.param5=sdfsdfsdfdsf' \
myapp helm/mychart | kubectl diff --namespace derps -f - | bat -l diff -