Merge pull request 'deployer(ET-011): tag v0.0.3 + deploy log (FAILED — infra blocker)' (#22) from deploy/ET-011-v0.0.3-log into main
This commit was merged in pull request #22.
This commit is contained in:
@@ -5,6 +5,14 @@ Format: [Keep a Changelog](https://keepachangelog.com/en/1.1.0/)
|
||||
|
||||
## [Unreleased]
|
||||
|
||||
## [v0.0.3] — 2026-06-03 (tagged, NOT deployed)
|
||||
|
||||
> ⚠️ Тег создан и запушен, PR смерджен в `main`, но docker-образ на test
|
||||
> **не задеплоен**: deploy-hook `/home/slin/bin/enduro-deploy-hook.sh`
|
||||
> упал на `Permission denied` при записи в `/var/log/enduro-trails/`
|
||||
> (каталог root-owned, у `slin` нет права записи и нет `NOPASSWD sudo`).
|
||||
> Подробности и инструкция для ops: `docs/work-items/ET-011/14-deploy-log.md`.
|
||||
|
||||
### Added
|
||||
- ET-011: Скачивание GPX из popup публичного трека. Новый эндпоинт
|
||||
`GET /api/gps-tracks/{track_id}/download` собирает GPX 1.1 из геометрии
|
||||
|
||||
71
docs/work-items/ET-011/14-deploy-log.md
Normal file
71
docs/work-items/ET-011/14-deploy-log.md
Normal file
@@ -0,0 +1,71 @@
|
||||
# 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
|
||||
|
||||
## Что было сделано
|
||||
|
||||
1. PR #21 (`feat(gps-tracks): GPX download from public track popup (ET-011)`)
|
||||
успешно смерджен в `main` через Gitea API (`Do=merge`, merge commit
|
||||
`b21f543289a6d46711710068a7528c8749cf2f0f`).
|
||||
2. Создан и запушен тег `v0.0.3` (от `origin/main`,
|
||||
инкремент patch от `v0.0.2`).
|
||||
|
||||
## Что НЕ сделано (и почему)
|
||||
|
||||
3. **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` нет — это
|
||||
первый запуск хука; никакой деплой через него ещё не отрабатывал.
|
||||
|
||||
4. **Healthcheck / smoke** не запускались: новый образ не катился,
|
||||
контейнер `enduro-trails-app-1` продолжает работать на старом образе
|
||||
(Up 37 hours, unhealthy ещё до начала этого деплоя).
|
||||
5. **Rollback** не выполнялся: новый код не задеплоен, откатывать нечего.
|
||||
Запуск `--rollback` бессмысленен (нет `.deploy-prev-image`) и упал бы
|
||||
на той же permission denied.
|
||||
|
||||
## Текущее состояние production (test env)
|
||||
|
||||
- `https://openclaw.mva154.duckdns.org/enduro/` → HTTP 200 (старый образ).
|
||||
- На `main` лежит код ET-011 (commit `b21f543`) + тег `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`), либо
|
||||
- выдать `slin` `NOPASSWD` на `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
|
||||
Reference in New Issue
Block a user