| okf |
type |
visibility |
status |
updated |
links |
| 0.1 |
decision |
private |
active |
2026-08-03 |
|
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):
- Deploy control-plane na VPS (nowy executor +
../..:/repo:ro).
- Instalacja
jobs/deploy-runner/ na vps, piha, solaria — patrz README
(„Install (per node)"). Na VPS VPS_EVENTS_HOST musi zostać puste.
- 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.
- 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).