A helm3 plugin, dyff between the current release and new one with a new chart version and values.
To dry-run the upgrade of a release with a new chart version, usually do this with dyff
, my favorite diff tool and too long and several times of helm
calls:
❯ dyff bw ib \
# from this, the current release's mainfests
<(heml get manifest myrelease) \
# to this, the new one i want to upgrade
<(helm template myrelease myrepo/mychart --version x.y.z -f <(helm get values myrelease))
Sometimes, the new values are required:
❯ dyff bw ib \
<(heml get manifest myrelease) \
<(helm template myrelease myrepo/mychart --version x.y.z -f <(helm get values myrelease) -f new-values.yaml ...)
What if the current context is not in the same namespace as the release:
❯ dyff bw ib \
<(heml get manifest myrelease -n mynamespace) \
<(helm template myrelease myrepo/mychart --version x.y.z -f <(helm get values myrelease -n mynamespace) -f new-values.yaml ... -n mynamespace)
dyff with the new chart version:
❯ helm dyff upgrade myrelease myrepo/mychart -v x.y.z
dyff with the new values ammended(would overwrite to the current release's one):
❯ helm dyff upgrade myrelease myrepo/mychart -f new-values.yaml
or just with the new values, disabling the default option:
❯ helm dyff upgrade myrelease myrepo/mychart -f new-values.yaml --ammend false
❯ helm plugin install https://github.com/flavono123/helm-dyff
- ci
- support
helm plugin update
- unit tests
- bump a tag, release at once
- support