Files
admin/.tasks/snolla-local-admin-restore.md
vitya b1b0092cdc design(snolla): local .NET admin restore + on.snolla.com VDS migration
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>
2026-07-20 09:45:06 +03:00

34 lines
3.2 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# snolla-local-admin-restore
## Goal
Восстановить локальный .NET-админ (catch-all IIS-сайт `snolla`) на этой машине (`windows-recovery-host`), снесённый 2026-06-08 при декоммишене. Назад — с RUVDS (текущий прод-админ с MinIO drop-in). Даёт `/admin` для всех сайтов тиража + on.snolla.com локально. **Спека:** [[../.wiki/concepts/snolla-local-admin-and-on-snolla-migration-design.md]] §Task A.
## Why
Тираж уехал на VDS (Node), админка осталась на RUVDS .NET. Нужно локально редактировать контент (особенно on.snolla.com для Task B) без зависимости от RUVDS. Временно — пока админ не мигрирован на VDS.
## Addressing (confirmed оператором)
Catch-all `*:80` + `hosts`-override → `127.0.0.1 <alias>.snolla.com`. Один AppPool `snolla`. URL = `<alias>.snolla.com/admin`:
- tandemmebel.snolla.com/labtools.snolla.com/labtoolspro.snolla.com/emspb.snolla.com/kupimknigi.snolla.com/on.snolla.com
## Plan / phases
- [ ] **0. Verify source (read-only SSH RUVDS)**`pass show ruvds-iis/full-env`; проверить `C:\sites\snolla\` есть, `Web.config` несёт `FileStorage.S3`+`minio.kzntsv.site`, IIS site `snolla` жив. Если MinIO НЕ применён → fallback: build из MoreThenCms source + drop-in `MoreThenCms.FileStorage.S3/deploy/`.
- [ ] **1. Копировать `C:\sites\snolla\`** RUVDS→локально (~8.66 GB, scp/rclone).
- [ ] **2. Репойнт conn-string**`mssql.kzntsv.site,1433;Catalog=MoreThenCms;TrustServerCertificate=True` (DB-креды из `pass`; уточнить app-аккаунт vs SA).
- [ ] **3. MinIO-ключи** в `<fileStorageClients>``minio.kzntsv.site`, бакеты assets/galleries/themes, ключи из `pass show minio-vds/full-env` (если плейсхолдеры). Кэши оставить Local.
- [ ] **4. IIS-сайт `snolla`** — AppPool `snolla` (.NET v4.0 Integrated, AppPoolIdentity), binding `*:80` catch-all. ACL `IIS AppPool\snolla:(OI)(CI)(M)` на `C:\sites\snolla`.
- [ ] **5. hosts-override**`127.0.0.1 <6 aliases>.snolla.com` (elevation).
- [ ] **6. FW** — блок inbound 80 (локальный только). URL Rewrite rule НЕ ставить.
- [ ] **7. Smoke**`curl -H "Host: tandemmebel.snolla.com" http://127.0.0.1/admin/account/login` → 200; on.snolla.com同理; MinIO upload-цикл.
## Status
⚪ ready (ждёт отмашки оператора на SSH RUVDS + креды). Branch: master.
## Depends on / blocks
- Блокирует: [[on-snolla-vds-migration]] (нужен админ для контент-инспекции on.snolla.com).
## Open Q
- MoreThenCms DB app-аккаунт + путь в `pass` (SA есть `mssql-vds/sa-password`, но админ юзает app-аккаунт).
- Включать все ~60 сайтов или только тираж(5)+on.snolla.com — catch-all даёт все, решает hosts-список.
## Rollback
Удалить IIS-сайт `snolla` + `C:\sites\snolla\` + откатать hosts. Прод-RUVDS не тронут.