From 4def67cd0d04e81351ce00c162657f3d943e7f1f Mon Sep 17 00:00:00 2001 From: vitya Date: Fri, 28 Aug 2026 13:14:35 +0300 Subject: [PATCH] =?UTF-8?q?docs(runbook):=20mappa=20v0.28.0=20(f1ba4e9)=20?= =?UTF-8?q?+=20gotcha=20=D1=80=D0=B5-=D0=B8=D0=BD=D0=B4=D0=B5=D0=BA=D1=81?= =?UTF-8?q?=D0=B0=20tsvec?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .wiki/concepts/mappa-vds-deploy-runbook.md | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/.wiki/concepts/mappa-vds-deploy-runbook.md b/.wiki/concepts/mappa-vds-deploy-runbook.md index 7572cc6..78ea9d3 100644 --- a/.wiki/concepts/mappa-vds-deploy-runbook.md +++ b/.wiki/concepts/mappa-vds-deploy-runbook.md @@ -3,7 +3,7 @@ title: mappa — VDS deploy runbook (БД / образ / Portainer-стек 27 / type: concept tags: [mappa, vds, deploy, docker, portainer, traefik, postgres, runbook, meta] related: [[../entities/vds-kzntsv]], [[portainer-stack-management-vds]], [[mappa-prod-infra]] -updated: 2026-08-27 +updated: 2026-08-28 --- # mappa → VDS deploy runbook @@ -22,7 +22,7 @@ mappa (#985). Не делать чужую часть. - **Образ:** `registry.kzntsv.site/mappa:` — тег = version из package.json, GIT_SHA передаётся `--build-arg GIT_SHA=` (Dockerfile в корне репо, multi-stage node:22-alpine; **обязательный COPY `src/lib/schema.sql` → `dist/src/lib/schema.sql`** — tsc не копирует .sql, - без него migrate() падает «schema.sql not found»). Прод на 2026-08-27 = **v0.27.0** (GIT_SHA aa87246). + без него migrate() падает «schema.sql not found»). Прод на 2026-08-28 = **v0.28.0** (GIT_SHA f1ba4e9). Deploy-паттерн: релизная ветка `deploy/vX.Y.Z` из батч-tip → бамп package.json → merge в master. - **Стек Portainer:** `mappa` (Id 27, endpoint 1). Source-of-truth compose: `admin/host-stacks/vds-kzntsv/mappa.compose.yml`. @@ -108,3 +108,7 @@ ssh vds.kzntsv.site 'docker ps --filter name=mappa --format "{{.Status}}"' Идемпотентен (ON CONFLICT DO NOTHING); повторный прогон добавляет только новые страницы. Первый прогон: 2539 тегов / 6555 рёбер; проверку «секреты не стали тегами» — скан имён на sk-/AKIA/JWT перед apply (имена password/token — теги-темы, не значения). +8. **Одноразовый ре-индекс tsvec при создании конфига токенизатора (v0.28.0, 2026-08-28)** — + миграция создаёт PG-конфиг `mappa` (гейт newly_created) и перестраивает tsvec ВСЕХ сущностей + (~13.5k коммитов). Старт после деплоя дольше обычного; health может отвечать 404/не стартовать + до ~1 мин — это ожидаемо, не паника. Проверять `docker ps` (health: starting) + повторять /health.