feat(deploy): async compose-up for instant UI feedback (v0.28.2)
Deploy API now returns immediately after validation + config save. docker compose up -d runs in a background goroutine so the UI shows progress during image pulls instead of blocking for 30-60s. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -142,8 +142,8 @@ The app catalog lives in a separate Git repository. The controller:
|
||||
- Hard block if `used_mb + new_request > usable_memory`
|
||||
- `CommittedMemory()` (declared sum) still used for soft overcommit warning only
|
||||
- Deploy page shows real memory usage bar (not declared reservations)
|
||||
5. Pre-generated secret values are submitted as hidden form inputs so the **same values** the user saw are saved to `app.yaml` (no silent re-generation on submit). Controller saves `app.yaml`, sets in-memory `Deployed` flag **before** `docker compose up -d` (avoids stale UI during slow image pulls), reverts on failure
|
||||
6. 3-step progress panel polls `GET /api/stacks/{name}` every 3s: config saved → containers starting → health check passed
|
||||
5. Pre-generated secret values are submitted as hidden form inputs so the **same values** the user saw are saved to `app.yaml` (no silent re-generation on submit). Controller saves `app.yaml`, sets in-memory `Deployed` + `Deploying` flags, then runs `docker compose up -d` **asynchronously** in a goroutine — API returns immediately so the UI switches to the progress panel without waiting for image pulls. On failure the goroutine reverts both disk and in-memory state and sets `DeployError`.
|
||||
6. 3-step progress panel polls `GET /api/stacks/{name}` every 3s: config saved → `deploying` (pulling images) → containers starting → health check passed. New `StateDeploying` state shown while compose-up is in progress (no containers yet).
|
||||
7. Post-deploy: locked fields (DB_PASSWORD, etc.) become read-only; the "Automatikusan generált értékek" section continues to show the saved values on the settings page
|
||||
|
||||
#### App Info Pages
|
||||
@@ -195,6 +195,7 @@ When app templates are updated (e.g., a new `APP_KEY` secret is added to `.felho
|
||||
|-------|-------|-------|---------|
|
||||
| Running + healthy | Green | "Fut" | All containers running and healthy |
|
||||
| Running + starting | Orange | "Indulas..." | Healthcheck not yet passed |
|
||||
| Deploying | Orange | "Telepítés..." | Compose up in progress (image pull, container creation) |
|
||||
| Running + unhealthy | Yellow | "Nem egeszseges" | Healthcheck failing |
|
||||
| Stopped/exited | Red | "Leallitva" | All containers stopped |
|
||||
| Restarting | Yellow | "Ujrainditas..." | Restart loop |
|
||||
|
||||
Reference in New Issue
Block a user