Repository navigation
v0.2.13
Fixed
- The roll no longer trusts a Longhorn write it did not check (bug-215). Every controller leave or join makes k0s restart every konnectivity agent, and until they reconnect a call through a Longhorn webhook fails with
No agent available. On the 2026-10-27 roll that left a destroyed node's replica records in place while the roll printed that it had removed them, and a volume then could not attach. Now:- the roll waits for
rollout status ds/konnectivity-agentafter the leave and again after the join, before any Longhorn write; - Longhorn writes (the replica delete and the disk re-admit patches) retry
No agent availablefor up to a minute; - the replica delete's result is checked, and the records are re-read afterwards. Any record on the dead node whose deletion was not accepted halts the roll before the node is re-created, with the record names.
- the roll waits for
- The flux-operator bump bot no longer rewrites cosign's checksum. Its
sedreplaced every two-spacesha256:inversions.yml, and cosign is the second one. PR #5 (v0.62.1) carried that error and was closed unmerged. The edit is now scoped to theflux_operatorblock, and the job fails unless exactly those two lines changed.
Pins
| Component | From | To | Why |
|---|---|---|---|
| Grafana | v13.2.4 | v13.3.1 | security: six CVEs fixed in 13.3.1/13.2.6, plus those in 13.3.0 |
| VictoriaMetrics | v1.154.1 | v1.156.0 | Go 1.27.3 and base-image security updates, bug fixes |
| VictoriaLogs datasource | v0.33.1 | v0.34.0 | alerting fix for empty Instant stats queries; needs Grafana ≥ 10.4 |
| flux-operator | v0.61.0 | v0.62.1 | maintenance; applies at the next node build |
| rustix (build dependency) | 1.1.4 | 1.1.6 | RUSTSEC-2026-0486 (unsound), which fails the release audit |
Each sha256 was checked against upstream's published checksum: sha256 for VictoriaMetrics and Grafana; SHA-1 for the datasource, whose sha256 was then computed from the same artefact. The flux-operator sha256 was computed from the downloaded install.yaml.
Install
- From server1:
substrate install-fleet v0.2.13to preview, then--apply. It installs on every hypervisor and ends by checking each host's version. substrate deploy-observability --apply(Grafana, VictoriaMetrics, the datasource). Then confirm Grafana's VictoriaLogs panels still load.- flux-operator changes nothing until the next node build. The roll changes are proven by the next roll.
216 tests.
Known
- The konnectivity wait narrows the window rather than closing it: k0s may rewrite the DaemonSet a moment after the wait returns. The retry and the re-read are what make the roll safe. The proof is the next roll passing without
roll_runbook.md§2a done by hand.