Helm, the package manager for Kubernetes, offers a promising start for managing complex applications. Its charts provide a convenient way to define, install, and upgrade even the most intricate Kubernetes applications. However, as your project scales and evolves, you may face unexpected challenges, particularly with chart upgrades and maintenance.
A recent experience upgrading an old Bitnami chart highlighted this issue. Bitnami introduced breaking changes in its subchart, bitnami-common
, moving from version 1.x.x
to 2.x.x
. Since Helm uses YAML, which is just a templating language, it can't manage different versions of subcharts as dependencies. This results in errors due to value changes in bitnami-common
.
To resolve this, you must upgrade all charts that depend on bitnami-common
to the same version.