PR #21 merged to main and tag v0.0.3 pushed, but docker-compose roll on test host did not happen: /home/slin/bin/enduro-deploy-hook.sh exits with "Permission denied" on /var/log/enduro-trails/deploy-hook.log (root-owned, no NOPASSWD sudo for slin). Healthcheck/smoke/rollback all skipped — new code is on main but old image still serves traffic. Action for ops: see docs/work-items/ET-011/14-deploy-log.md ("Что нужно от ops, чтобы доехать"). After fix, re-run deploy hook — PR/tag do not need to be redone.
3.6 KiB
Deploy Log — ET-011
- Version (tag): v0.0.3
- Date: 2026-06-03 23:08 UTC
- PR: #21 (merged at 2026-06-04T02:08:45+03:00, merge commit
b21f543289a6d46711710068a7528c8749cf2f0f) - Environment: test (https://openclaw.mva154.duckdns.org/enduro/)
- Healthcheck: NOT RUN (deploy did not start)
- Smoke: NOT RUN (deploy did not start)
- Status: FAILED — infrastructure blocker
Что было сделано
- PR #21 (
feat(gps-tracks): GPX download from public track popup (ET-011)) успешно смерджен вmainчерез Gitea API (Do=merge, merge commitb21f543289a6d46711710068a7528c8749cf2f0f). - Создан и запушен тег
v0.0.3(отorigin/main, инкремент patch отv0.0.2).
Что НЕ сделано (и почему)
-
Deploy hook упал на старте при первой записи в лог:
/home/slin/bin/enduro-deploy-hook.sh: line 15: \ /var/log/enduro-trails/deploy-hook.log: Permission denied DEPLOY_RC=1Причина: каталог
/var/log/enduro-trails/принадлежитroot:root(drwxr-xr-x), пользовательslin(uid=1000) не имеет права на запись. Хук-скрипт (set -e, строка 15:echo "..." >> $LOG) падает до того, как успевает выполнитьgit pullилиdocker compose up -d app.У
slinнет беспарольногоsudo(sudo -n -l→a password is required), поэтому фикс прав на хосте недоступен из роли deployer.Файла
/home/slin/repos/enduro-trails/.deploy-prev-imageнет — это первый запуск хука; никакой деплой через него ещё не отрабатывал. -
Healthcheck / smoke не запускались: новый образ не катился, контейнер
enduro-trails-app-1продолжает работать на старом образе (Up 37 hours, unhealthy ещё до начала этого деплоя). -
Rollback не выполнялся: новый код не задеплоен, откатывать нечего. Запуск
--rollbackбессмысленен (нет.deploy-prev-image) и упал бы на той же permission denied.
Текущее состояние production (test env)
https://openclaw.mva154.duckdns.org/enduro/→ HTTP 200 (старый образ).- На
mainлежит код ET-011 (commitb21f543) + тегv0.0.3, но в контейнере он не запущен.
Что нужно от ops, чтобы доехать
Любой из вариантов разблокирует деплой:
sudo chown slin:slin /var/log/enduro-trails(илиchmod 0777), либо- поправить
/home/slin/bin/enduro-deploy-hook.sh, чтобыLOGуказывал на каталог, в которыйslinможет писать (например/home/slin/var/log/enduro-trails/deploy-hook.log), либо - выдать
slinNOPASSWDнаenduro-deploy-hook.shи обернуть его вsudo.
После фикса повторно дернуть bash /home/slin/bin/enduro-deploy-hook.sh
от имени slin — версия на main уже та, что должна катиться (тег
v0.0.3), пересоздавать PR/тег не нужно.
Артефакты
- Tag:
v0.0.3(origin/main@b21f543) - PR: #21 (merged)
- Deploy attempt timestamp: 2026-06-03 23:08 UTC