tower 0.61.17 / tower-ui 0.61.17 — async addon save (kill Saving freeze)
handleUpdateAddons was fully synchronous including BuildKit Jobs per addon image. cetmix_tower auto-pulls 8 deps × ~30-90s each on a fresh cluster = 5-15 min. Reverse proxy timeout (60-120s) cuts the request mid-build, browser shows 'Saving' forever, drawer eventually closes on the timeout error, AND the cancelled context kills the goroutine mid-flight so values.yaml never gets committed. Now: handler validates inline (immediate feedback on bad input), spawns an addon-stage op, returns 202 + opId in <1s. The goroutine runs phases (resolve → build → commit → refresh) with a fresh context that survives client disconnect. Operator watches it in the bell + Activity tab, can keep working in another tab. Same pattern Deploy/Migrate/Apply already use.
This commit is contained in:
@@ -9,7 +9,7 @@ backend:
|
||||
# so every cluster that runs Tower needs the same imagePullSecret
|
||||
# provisioned out-of-band (until cluster-platform-v3 owns it).
|
||||
repository: registry.odoosky.cloud/odoosky/docker-mirror/tower
|
||||
tag: "0.61.16"
|
||||
tag: "0.61.17"
|
||||
pullPolicy: IfNotPresent
|
||||
imagePullSecrets:
|
||||
- name: docker-mirror-pull
|
||||
@@ -29,7 +29,7 @@ frontend:
|
||||
enabled: true
|
||||
image:
|
||||
repository: registry.odoosky.cloud/odoosky/docker-mirror/tower-ui
|
||||
tag: "0.61.16"
|
||||
tag: "0.61.17"
|
||||
pullPolicy: IfNotPresent
|
||||
imagePullSecrets:
|
||||
- name: docker-mirror-pull
|
||||
|
||||
Reference in New Issue
Block a user