3.7 KiB
3.7 KiB
tandemmebel-deploy-snolla-0-42-0
Goal
Пересобрать VDS-staging образ tandemmebel на движке @snollajs/snolla@0.42.0 (core 0.24.0 / data 0.14.1) — суперсидит ранее принятый 0.16.2-staging (b02ca18). Топология = вариант A (оператор): пересборка staging ДО cutover, прод не трогаем in-place. Прод-флип остаётся тем же DNS-gated событием (reg.ru→89.253.255.94, хозяин сайта) из paused [tandemmebel-web-vds-deploy]. Этот таск готовит образ + перепрогоняет гейты.
Key files
~/projects/tandemmebel.ru/apps/web/package.json:12— пин@snollajs/snolla(сейчас 0.40.0, нужен 0.42.0)~/projects/tandemmebel.ru/deploy/Dockerfile— multi-stage node:22-slim buildhost-stacks/vds-kzntsv/tandemmebel.compose.yml— Portainer стек 20, source-of-truth (staging-host; боевые Host() только в cutover-комменте).wiki/concepts/labtools.pro-vds-deploy-runbook.md— рунбук-зеркало
Decisions log
- 2026-07-04: BLOCKED на входе. Проверил репо-провенанс: snolla-репо на 0.42.0 (
bcee2d4, опубликовано), НО tandemmebel.ru origin/master9fa30a7пинит@snollajs/snolla 0.40.0— консюмер-бамп 0.40→0.42 не закоммичен/не запушен (ни один реф не содержит 0.42/0.24). Byte-verify «199/199 на 0.42.0» из тела таски гонялся против непушнутого локального бампа. Запросил у dev-source (victor/snolla inbox) коммит-бамп + sha. Peer-дисциплина: заявленный state таски ≠ реальность репо → репорт оператору, не проглатывать. - 2026-07-04: Топология A ратифицирована оператором+workshop. Cutover остаётся DNS-gated (внешнее событие).
Open questions
- Опубликован ли
@snollajs/snolla@0.42.0в verdaccio/registry так, чтоyarn installв docker-build его резолвит? (snolla commit говорит «published» — проверить при build) - Развести с paused
[tandemmebel-web-vds-deploy]— пометить старый пин суперсиженным, не плодить два конкурирующих образа.
Completed steps
- Вызваны обязательные скилы (using-tasks, project-discipline, using-vds-ops).
- Репо-провенанс проверен — блокер выявлен (консюмер-пин не запушен).
- Запрос на пуш бампа отправлен dev-source (victor/snolla).
Notes
- Acceptance (из тела таски на борде): (1) pre-deploy SSR
/projects+blog-listing → 200 не 500 (новые SELECT-колонки); (2) completeness-DoD перепрогнать на НОВОМ 0.42.0-образе (188 URL + gallery grid 15 роутов), не наследовать GREEN с 0.16.2; (3) archive-страницы НЕ блокер (projects archivesPath=""); (4) rollback наготове. - Build-рецепт:
git -C ~/projects/tandemmebel.ru archive <sha> | ssh vitya@89.253.255.94 tar -x;docker build -f deploy/Dockerfile --build-arg VERDACCIO_TOKEN -t registry.kzntsv.site/tandemmebel:<sha> . && push. Portainer PUT/POST через curl -X + node (НЕ PS Invoke-RestMethod). - Smoke гнать С VDS (воркстейшн ловит LAN-DNS-перехват прод-доменов).
- Notify: OpeItcLoc03/workshop (оркестратор) + heads-up victor/snolla (dev-source).