Commit 4b35f42
committed
fix(Boxcutter): Re-resolve bundle when rollout is stuck
Implements catalog spec digest tracking to detect spec changes during stuck
rollouts, enabling recovery by updating the ClusterExtension spec.
**Problem**: When a ClusterExtension rollout gets stuck (e.g., bad image causing
probe failures), updating the spec to a different version doesn't trigger
re-resolution. The controller reuses the stuck revision indefinitely.
**Solution**: Track a digest of resolution-relevant spec fields
(packageName, version, channels, selector, upgradeConstraintPolicy) in
ClusterObjectSet annotations. When spec changes during rollout, detect
digest mismatch and trigger re-resolution to create a new revision.
Generated-by: Claude1 parent afa2e7a commit 4b35f42
9 files changed
Lines changed: 1395 additions & 72 deletions
File tree
- internal/operator-controller
- controllers
- labels
- test/e2e
- features
- steps
Lines changed: 10 additions & 8 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
62 | 62 | | |
63 | 63 | | |
64 | 64 | | |
65 | | - | |
66 | | - | |
67 | | - | |
68 | | - | |
| 65 | + | |
| 66 | + | |
| 67 | + | |
| 68 | + | |
| 69 | + | |
69 | 70 | | |
70 | 71 | | |
71 | 72 | | |
| |||
104 | 105 | | |
105 | 106 | | |
106 | 107 | | |
107 | | - | |
108 | | - | |
109 | | - | |
110 | | - | |
| 108 | + | |
| 109 | + | |
| 110 | + | |
| 111 | + | |
| 112 | + | |
111 | 113 | | |
112 | 114 | | |
113 | 115 | | |
| |||
Lines changed: 4 additions & 3 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
499 | 499 | | |
500 | 500 | | |
501 | 501 | | |
502 | | - | |
503 | | - | |
504 | | - | |
| 502 | + | |
| 503 | + | |
| 504 | + | |
| 505 | + | |
505 | 506 | | |
506 | 507 | | |
507 | 508 | | |
| |||
0 commit comments