42 lines
1.9 KiB
Markdown
42 lines
1.9 KiB
Markdown
|
|
---
|
||
|
|
okf: "0.1"
|
||
|
|
type: decision
|
||
|
|
visibility: private
|
||
|
|
status: active
|
||
|
|
updated: 2026-08-03
|
||
|
|
links:
|
||
|
|
- ../phases/backlog.md
|
||
|
|
---
|
||
|
|
|
||
|
|
## deploy-runner: instalacja na węzłach + E2E redeployu (2026-08-03)
|
||
|
|
|
||
|
|
**Data**: 2026-08-03
|
||
|
|
**Źródło**: sesja `task/redeploy-fix` — recon D14/D15 + OPEN QUESTION 4 (nieopróżniona
|
||
|
|
kolejka akcji).
|
||
|
|
**Było**: `redeploy` nie mógł się wykonać nigdy. Executor odpalał
|
||
|
|
`scripts/deploy/deploy-node.sh <node> <service>` **wewnątrz swojego kontenera** —
|
||
|
|
skrypt ignoruje oba argumenty i wymaga repo w `${HOME}/homelab-codex-ws`
|
||
|
|
(w kontenerze `HOME=/home/homelab`, katalog nie istnieje) → `exit 1` w 18. linii.
|
||
|
|
Za tym stały jeszcze trzy blokady: brak `git`, brak klienta `docker` w obrazie oraz
|
||
|
|
— gdyby przeszedł — deploy **całego zestawu usług hosta executora**, nie węzła
|
||
|
|
z akcji. Stąd `healthcheck_failed` przekierowany 2026-07-29 na `container_restart`
|
||
|
|
i 18 pending / 0 completed.
|
||
|
|
**Zrobione w repo (ta sesja)**: `scripts/deploy/deploy-service.sh` (deploy jednej
|
||
|
|
usługi, wspólny z `deploy-node.sh` — ta sama inwokacja compose, więc ta sama nazwa
|
||
|
|
projektu), `jobs/deploy-runner/` (systemd na hoście: rsync-pull akcji, walidacja,
|
||
|
|
deploy, `action_result` z powrotem), executor dispatchuje `redeploy` do
|
||
|
|
`actions/deploy/<node>/` i rozlicza je jak `container_restart`
|
||
|
|
(`REDEPLOY_TIMEOUT_SECS=900`). 248 testów zielonych.
|
||
|
|
**Do zrobienia (runtime, wymaga operatora)**:
|
||
|
|
1. Deploy control-plane na VPS (nowy executor + `../..:/repo:ro`).
|
||
|
|
2. Instalacja `jobs/deploy-runner/` na vps, piha, solaria — patrz README
|
||
|
|
(„Install (per node)"). Na VPS `VPS_EVENTS_HOST` musi zostać puste.
|
||
|
|
3. E2E na benignej usłudze na PIHA (wzorzec `test-e2e-b` z 2026-07-23), potem
|
||
|
|
opróżnienie kolejki 18 pending — w tym `redeploy-vps-gokapi`.
|
||
|
|
4. SOLARIA: `group_add: "996"` dla node-agenta wciąż niewdrożony (recon 641-649) —
|
||
|
|
dopóki nie wejdzie, `container_restart` tam nie działa (redeploy działa, bo nie
|
||
|
|
idzie przez node-agenta).
|
||
|
|
|
||
|
|
---
|
||
|
|
|