chore(.tasks): iis-on-host-migration Phase 1-3 done, paused

10/11 main domains now served by native host IIS via traefik
(C:\sites\MoreThenCms.Web on *:80). rimiz.ru -> 404 (CMS-side),
stostayer/stostayer.old technically deployed but timeout locally,
traefik for stayer kept on VM. Phase 4-5 open.

- STATUS: ready -> paused with detailed where-I-stopped
- iis-on-host-migration: completed steps + decisions log + status block
- NEXT-SESSION-PROMPT: rewritten with current state + 4 next-task options

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-05-19 12:51:48 +03:00
parent 1f4a581ea0
commit 3d6a3e8c15
3 changed files with 50 additions and 33 deletions

View File

@@ -74,6 +74,24 @@
## Completed steps
- [x] Pulled VM sites to host (49 минут tar+ssh, 11 GB total)
- [x] IIS на хосте установлен (в рамках recovery, ещё нативно не использовался)
- [x] **Phase 1 — discovery** (2026-05-19): VM сайты/пулы/vdirs/features через SSH + appcmd, host IIS features через elevated DISM, source grep на hardcoded paths. См. `.wiki/sources/iis-host-migration-2026-05-19.md`.
- [x] **Phase 2 — миграция MoreThenCms.Web** (2026-05-19): `C:\sites\MoreThenCms.Web` (8.7 GB robocopy), Web.config patch (`sitePath` + conn → localhost, UTF-8 BOM), AppPool + Website на `*:80`, ACL `:(OI)(CI)M` для `IIS AppPool\MoreThenCms.Web`. Default Web Site остановлен. Smoke test через `localhost` с Host header — 10/11 хостов отвечают (rimiz.ru → 404, как issue ниже).
- [x] **Phase 2 — stostayer / stostayer.old** (2026-05-19, частично): сайты созданы на `:8090/:8091``C:\stayer\MoreThenCms.Web` / `C:\stayer\stostayer.old`, AppPools созданы, ACL поставлен. **Но локально оба отвечают timeout** — рантайм-проблема не разбиралась.
- [x] **Phase 3 — traefik switch** (2026-05-19): 11 yml пропатчены `host.docker.internal:18080``host.docker.internal:80`, traefik file-provider auto-reload, public smoke через `https://localhost:4443/`**10/11 хостов → HTTP 200**, rimiz.ru → 404. Stostayer/oldstostayer backend в traefik не трогали (остаются на VM).
## Решения (decisions log дополнен)
- 2026-05-19: **Snolla.IdentityManager не мигрируется** — пользователь подтвердил «не нужен» (Q-C в сессии). Если что-то внутри CMS дёргает его по `localhost:8089` — увидим в логах, тогда вернёмся.
- 2026-05-19: **Sub-apps stostayer.old (`/calc`, `/price`, `/price/tireService`) не мигрируются** — пользователь подтвердил «не нужны».
- 2026-05-19: **stostayer.connection-string на 89.253.219.2 не трогаем** (Q-B пользователя «не трогай, так надо»). Это внешний production MSSQL для stayer-инфраструктуры, не наш контейнер.
- 2026-05-19: **AppPool identity = ApplicationPoolIdentity** для всех 3 пулов (default outside SCM, безопасно). ACL `:(OI)(CI)M` (Modify) рекурсивно на site root.
- 2026-05-19: **Path strategy = C:\sites\\** (не `C:\inetpub\wwwroot\`) — пользователь выбрал (б) в Q1.
## Status
- ✅ MoreThenCms.Web на хосте обслуживает 10 главных доменов через traefik.
- ⏳ rimiz.ru → 404 (CMS-side mapping issue).
- ⏳ stostayer / stostayer.old: технически перенесены, runtime fail на хосте, prod-трафик пока на VM.
- ⏳ Phase 4 (cleanup VM) — пока нельзя, нужны stostayer.
- ⏳ Phase 5 (URL Rewrite + ARR + log rotation + AppInit) — bonus, можно сразу.
## Notes