Two linked tasks, spec in .wiki/concepts/ per project-discipline. Task A — snolla-local-admin-restore: восстановить локальный catch-all IIS-сайт `snolla` (снесён 2026-06-08) копированием C:\sites\snolla\ с RUVDS (прод-админ с MinIO drop-in), conn → mssql.kzntsv.site MoreThenCms. Доступ <alias>.snolla.com/admin через hosts-override, один AppPool. Адреса + siteIds извлечены из MoreThenCms DB read-only. Task B — on-snolla-vds-migration (blocked by A): on.snolla.com (siteId B9ECDB50…, alias on, "Internal Site", culture en) с RUVDS IIS → VDS Node snolla-app 0.42.1, реконструкция Liquid-шаблонов из боевого сайта+админки (исходников нет). По рецепту tandemmebel-vds-deploy-runbook. Board entries: .tasks/STATUS.md + per-task files. Co-Authored-By: Claude <noreply@anthropic.com>
2.8 KiB
2.8 KiB
on-snolla-vds-migration
Goal
Мигрировать посадочную on.snolla.com с RUVDS IIS (MoreThenCms .NET) на VDS как Node snolla-app @snollajs/snolla 0.42.1. Исходников сайта нет — реконструировать из боевого сайта + админки. Спека: ../.wiki/concepts/snolla-local-admin-and-on-snolla-migration-design.md §Task B.
Facts (из MoreThenCms DB)
SiteId=B9ECDB50-2B93-4CE5-B238-A9918B3F9CF7,Alias=on,Title="Internal Site",Culture=en,Live=1, Production=1.- Контент (DB-строки + ассеты) уже на vds-kzntsv (общая
MoreThenCmsDB + MinIO) — нужно только репо шаблонов+конфига.
Plan / phases
- 1. Реконструкция шаблонов — через локальный админ (snolla-local-admin-restore) + боевой
https://on.snolla.com/HTML: для каждой страницы сопоставить вёрстку с DB-контент-структурой →layout.liquid+ page/partials. Итеративно (пиши→рендерь→сверяй с боевым). - 2. Новый репо
victor/on-snolla(имя уточнить) — калькаtandemmebel.ru/apps/web(server.js/index.js/config/views/package.json + deploy/Dockerfile). Пин@snollajs/snolla0.42.1. - 3. production.json — siteId
B9ECDB50…, siteUrlhttps://on.snolla.com, sequelize→MoreThenCmsmssql.kzntsv.site:1433, s3→minio.kzntsv.site, imgproxy→imgproxy.kzntsv.site, sharp serve-bytes. Секреты в runtime-env стека. - 4. Build на VDS (обход traefik-499, build-arg VERDACCIO_TOKEN), push
registry.kzntsv.site/on-snolla:<sha>. - 5. Throwaway-staging
:50XXиз env живого (или нового стека) → completeness-gate: sitemap parity vs прод-on.snolla.com (page-locs NEW==PROD, self-consistency 0 регрессий 404/5xx). - 6. Stack Portainer за traefik
Host(on.snolla.com),mem_limit 512m, env секреты. - 7. Cutover — verify авторит. NS reg.ru→89.253.255.94 → traefik Host-rule → LE-серт → live-smoke. По
tandemmebel-vds-deploy-runbook.
Status
⚪ ready (blocked by snolla-local-admin-restore). Branch: master.
Depends on / blocks
- Blocked by: snolla-local-admin-restore (админ для контент-инспекции).
Open Q
- Имя репо (
victor/on-snolla?victor/on.snolla.com?). - Сложность посадочной (объём шаблонов) — узнается при реконструкции.
Rollback
Образ предыдущего тега в registry / revert DNS reg.ru→80.64.31.36 (RUVDS IIS жив пока DNS не флипнут).