Skip to content

release: v0.1.1 - #19

Merged
wrkode merged 1 commit into
mainfrom
release/v0.1.1
Aug 9, 2026
Merged

release: v0.1.1#19
wrkode merged 1 commit into
mainfrom
release/v0.1.1

Conversation

@wrkode

@wrkode wrkode commented Aug 9, 2026

Copy link
Copy Markdown
Contributor

Chart 0.1.1 / appVersion 0.1.1, with the README and quickstart version references following.

What is in it

Everything found by installing the released v0.1.0 chart and driving a real pool through it, plus two behaviours that were burning hardware for nothing:

#13 a default install could not create a cell (secrets read-only), emitted no events (events.k8s.io ungranted), pulled an unpublished image tag, and would have labelled every alert with the operator's namespace
#15 a live cell's Node was reaped as stale while its own kubelet was using it — unrecoverable, the kubelet never re-registers
#16 cells were rebuilt five times against faults that were not in the cell
#18 this release's own new CRD fields would have been silently dropped on every upgraded cluster, taking rolling update with them
#10, #12 template drift + updatePolicy.type: RollingUpdate, and the observability pack (already on main before this release)

Plus the create/destroy loop fix a replacement cell used to hit by inheriting its predecessor's teardown.

Upgrading from v0.1.0 — read this

helm upgrade never updates a chart's crds/, and the apiserver then silently drops what the older schema lacks. Apply the CRD:

kubectl apply -f https://raw.githubusercontent.com/kubeswift-io/gpucellpool/v0.1.1/config/crd/bases/cells.kubeswift.io_gpucellpools.yaml

Skip it and updatePolicy.type: RollingUpdate is accepted and ignored. The manager logs the missing fields at startup, so you can check rather than remember. docs/upgrading.md is new and covers this, the two additive RBAC grants, and why downgrades are safe.

Verified

  • make lint 0 issues, full suite green, helm lint clean
  • rendered default image tag is v0.1.1, matching what the release workflow will publish (CI guards this)
  • every capability in this release was exercised on the dev cluster against a real GTX 1080 cell — the node-adoption race, the pool-wide-fault stall and its recovery, and the CRD drift report in both directions

🤖 Generated with Claude Code

Chart 0.1.1 / appVersion 0.1.1, and the version references in README and the
quickstart follow it.

The release is what installing the v0.1.0 chart and driving a real pool through it
turned up, plus two behaviours that were burning hardware for nothing:

- a default install could not create a cell (secrets read-only), emitted no events
  (events.k8s.io ungranted), and pulled an image tag that was never published
- a live cell's Node was reaped as stale while its own kubelet was using it, which
  a kubelet never recovers from
- cells were rebuilt up to five times against faults that were not in the cell
- and this release's own new CRD fields would have been silently dropped on every
  upgraded cluster, taking rolling update with them — so the manager now says so

docs/upgrading.md is the one thing to read before upgrading: `helm upgrade` does
not update CRDs, and the apiserver drops what it does not know without a word.

Signed-off-by: William Rizzo <william.rizzo@gmail.com>
@wrkode
wrkode merged commit 6cdbfba into main Aug 9, 2026
4 checks passed
@wrkode
wrkode deleted the release/v0.1.1 branch August 9, 2026 13:16
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant