fix(clickstack-operators): bump clickhouse-operator-helm dep to >=0.0.5#226
fix(clickstack-operators): bump clickhouse-operator-helm dep to >=0.0.5#226ZeynelKoca wants to merge 1 commit into
Conversation
🦋 Changeset detectedLatest commit: bb4050b The changes in this PR will be included in the next version bump. This PR includes changesets to release 1 package
Not sure what this means? Click here to learn what changesets are. Click here if you're a maintainer who wants to add another changeset to this PR |
|
@dhable Any indication on when this can be merged + released? Running into production upgrade issues now, which we had to find a temporary solution for. |
|
Relevant PR for single-replica upgrade issues: ClickHouse/clickhouse-operator#208 |
b431e9e to
939e7fc
Compare
|
@dhable Gentle bump. Is this project still maintained? Anything we can do to help gain momentum here? Feels like this repo is losing momentum against the other clickstack repos which would be a shame |
939e7fc to
bb4050b
Compare
Deep ReviewScope: The constraint edit itself is correct, but the change is incomplete: the lock file and the operators chart version were not updated alongside it, so as committed the bump neither builds cleanly nor ships. 🔴 P0/P1 — must fix
🟡 P2 — recommended
🔵 P3 nitpicks (4)
Reviewers (6): correctness, testing, maintainability, project-standards, reliability, learnings-researcher. Testing gaps:
|
|
hey @ZeynelKoca, thanks for the contribution. could you address the p0 commit? to rebuild the lock file |
Problem
The
clickstack-operatorschart at v1.0.0 declares itsclickhouse-operator-helmdependency as~0.0.2. In Helm's Masterminds semver implementation, the tilde range for pre-1.0 patch-level versions is interpreted narrowly as>=0.0.2 <0.0.3— so this dep resolves only to v0.0.2 of the operator chart, even though newer 0.0.x releases (v0.0.3, v0.0.4, v0.0.5) exist.Consumers of
clickstack-operatorsv1.0.0 are effectively pinned to operator v0.0.2 and miss every fix since then. In particular, v0.0.5 ships:spec.podDisruptionBudgeton bothClickHouseClusterandKeeperCluster(lets users override the auto-generated PDB).ClickHouseClusterwithreplicas <= 1:maxUnavailable=1(instead ofminAvailable=1) so single-replica clusters do not deadlock on voluntary disruption (e.g. node drains, upgrades).Jobsinformer the v0.0.5 controller manager requires).We hit this in production: a single-replica deployment of ClickStack on AKS got stuck on a node-pool VM resize because the v0.0.2 operator generated PDBs that no eviction could satisfy (
minAvailable=1on a 1-replica ClickHouse,maxUnavailable=0on a 1-replica Keeper). Bumping the wrapper chart's operator image alone is not enough — the v0.0.5 binary crashloops against v0.0.2's RBAC/CRDs.Fix
Widen the dependency constraint so the chart pulls v0.0.5 (and stays compatible with future 0.0.x releases):
This pulls operator v0.0.5 + its matching CRDs + matching RBAC together, as one consistent set.
Verification
Resolves cleanly, no template errors, all expected resources render.
Changeset
Added
.changeset/bump-clickhouse-operator-helm.md(minor bump) describing the user-visible change for the next release.Notes for adopters
Existing installations have CRDs with
helm.sh/resource-policy: keep(from the original install), which prevents Helm from updating them on upgrade. After this change merges and a new chart release is published, adopters upgrading from v1.0.0 will need a one-timekubectl apply -fof the new CRDs (or remove the keep annotation) to pick up the new schema. This is unrelated to this PR but worth mentioning in the release notes.