meta(handoff): emspb LIVE+cutover done, labtools still awaiting DNS-flip
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -1,43 +1,39 @@
|
|||||||
---
|
---
|
||||||
_last_updated_: 2026-07-01T13:45:00Z
|
_last_updated_: 2026-07-02T00:40:00Z
|
||||||
session_id: 2026-07-01-labtools-vds-staging
|
session_id: 2026-07-02-emspb-vds-deploy-cutover
|
||||||
---
|
---
|
||||||
|
|
||||||
# Next session handoff
|
# Next session handoff
|
||||||
|
|
||||||
## Recent commits
|
## Recent commits
|
||||||
- `deploy(labtools)`: staging собран+развёрнут на vds-kzntsv, smoke parity GREEN, рунбук + стек-черновик (этой сессии).
|
- `deploy(emspb)` `c3b722bb`: emspb.ru snolla-app LIVE на vds-kzntsv — staging собран+развёрнут (stack 18) + **cutover выполнен в ту же сессию** (оператор флипнул DNS), live-smoke GREEN. Запушен.
|
||||||
- (до этого: pilonuxt sitemap taxonomy deploys — не связано)
|
- `deploy(labtools)` `a15fd65a`: labtools staging GREEN на vds-kzntsv (stack 17) — ждёт DNS-flip.
|
||||||
|
|
||||||
## Open треки
|
## Open треки
|
||||||
| Трек | Готовность | Entry-point |
|
| Трек | Готовность | Entry-point |
|
||||||
|---|---|---|
|
|---|---|---|
|
||||||
| `[labtools-web-vds-deploy]` | STAGING GREEN, ждём DNS-cutover | `.tasks/STATUS.md` + `.wiki/concepts/labtools-vds-deploy-runbook.md` |
|
| `[labtools-web-vds-deploy]` | STAGING GREEN, **ждём DNS-cutover** | `.tasks/STATUS.md` + `.wiki/concepts/labtools-vds-deploy-runbook.md` |
|
||||||
|
| `[emspb-web-vds-deploy]` | 🟢 **closed** (staging+cutover LIVE) | `.wiki/concepts/emspb-vds-deploy-runbook.md` |
|
||||||
|
|
||||||
**Состояние labtools:** образ `registry.kzntsv.site/labtools:43e28ba` собран на VDS + push; Portainer stack `labtools`
|
## Состояние emspb (DONE)
|
||||||
(Id 17, endpoint 1) на `labtools.vds.kzntsv.site`, контейнер healthy; 8 секрет-env в stack-env. Smoke vs бой
|
`emspb.ru`+`www.emspb.ru` LIVE на VDS (`89.253.255.94`), Portainer stack `emspb` (Id 18), образ `registry.kzntsv.site/emspb:b6e361a`. traefik-rule = боевые хосты (staging-хост убран→404), единый LE-cert, `ssl_verify=0`. RUVDS IIS `80.64.31.36` цел = rollback. Env == labtools (8 секретов). Рунбук записан. Workshop отрепорчен.
|
||||||
`www.labtools.ru` — GREEN (меню 200/200, редиректы 301 1:1, тема+`/assets` из MinIO байт-в-байт, Cache-Control 86400).
|
|
||||||
Бой на RUVDS IIS (`80.64.31.36`) ЖИВОЙ, не тронут. Env-контракт (8 секретов, источники) — в рунбуке.
|
|
||||||
|
|
||||||
## Спроси user'а
|
## Состояние labtools (ЖДЁТ)
|
||||||
- **DNS хозяин перенастраивает A-записи `labtools.ru`/`www` → `89.253.255.94` ЗАВТРА (2026-07-02).** Как оператор
|
Образ `registry.kzntsv.site/labtools:43e28ba`, Portainer stack `labtools` (Id 17), STAGING `labtools.vds.kzntsv.site` healthy, smoke vs бой GREEN. Бой на RUVDS IIS (`80.64.31.36`) живой. **DNS labtools.ru/www ВСЁ ЕЩЁ на RUVDS** (проверено 2026-07-02 внешним резолвером) — cutover НЕ выполнен.
|
||||||
подтвердит «DNS флипнут / флипаю сейчас» — выполнить cutover ops-шаги (ниже).
|
|
||||||
- `labtools.pro` — отдельная таска (оператор решил 2026-07-01, не в scope этой). Ждёт заведения.
|
|
||||||
|
|
||||||
## Cutover ops-шаги (по сигналу оператора о флипе — НЕ раньше)
|
## Спроси оператора / жди сигнал
|
||||||
1. В стеке `labtools` (Portainer Id 17) добавить в traefik-rule: `Host(labtools.ru) || Host(www.labtools.ru)` —
|
- **labtools DNS-cutover** — как оператор скажет «флипнул labtools» (проверить внешним резолвером что именно labtools→VDS!): добавить в stack 17 traefik-rule `Host(labtools.ru) || Host(www.labtools.ru)`, дождаться LE-cert, smoke на боевом хосте, убрать staging-хост post-cutover, отрепортить. Рунбук labtools § Cutover.
|
||||||
**синхронно с флипом** (не заранее — см. guard ниже). Правка source: `admin/host-stacks/vds-kzntsv/labtools.compose.yml` → PUT в Portainer.
|
- `labtools.pro` — отдельная таска, ждёт заведения (оператор решил 2026-07-01).
|
||||||
2. Проверить LE cert выпущен на боевом хосте + прогнать тот же смоук-свип уже на `https://www.labtools.ru`.
|
|
||||||
3. Отчитаться оператору + workshop (from admin).
|
|
||||||
|
|
||||||
## Не делать (preemptive guards)
|
## Не делать (guards)
|
||||||
- **НЕ добавлять `Host(labtools.ru)` в traefik-rule ДО флипа DNS** — traefik проактивно на reload тянет LE-cert (HTTP-01),
|
- **НЕ добавлять `Host(labtools.ru)` в traefik-rule ДО флипа DNS** — LE HTTP-01 упадёт на RUVDS → сожжём rate-limit. Cм. memory [operator-dns-flip-verify-domain-before-cutover].
|
||||||
challenge упадёт на RUVDS (DNS ещё там), сожжём LE rate-limit → задержка cert на реальном cutover'е.
|
- **НЕ путать домены** — на этой сессии оператор флипнул emspb, НЕ labtools (был запланирован). Всегда external-resolve перед PUT traefik-rule.
|
||||||
- **НЕ выводить RUVDS IIS labtools из эксплуатации** (директива оператора 2026-07-01) — это rollback-путь.
|
- **НЕ выводить RUVDS IIS** (labtools/emspb) — rollback-путь.
|
||||||
- **НЕ флипать DNS самим** — это делает хозяин домена.
|
- **НЕ флипать DNS самим** — это оператор.
|
||||||
- **Автопуш в ЭТОЙ сессии НЕ выдавался** — коммиты локальные, не запушены; на старте следующей — ask-mode (project-discipline Rule 4).
|
- Build snolla-образов — НА VDS из чистого `git archive`, push с VDS (registry локален).
|
||||||
- Build-канал labtools: собирать НА VDS из чистого `git archive` (без `config/default.json`), push с VDS (registry локален).
|
|
||||||
- `labtools.pro` — не трогать в рамках этой таски.
|
## Autopush
|
||||||
|
- Оператор выдал grant «пуш разрешаю» на этой сессии (2026-07-02). Session-end сбрасывает в ask-mode.
|
||||||
|
|
||||||
## Memory updates за сессию
|
## Memory updates за сессию
|
||||||
- (нет на этом раунде — всё в STATUS.md + рунбуке `labtools-vds-deploy-runbook.md`)
|
- Заведена `operator-dns-flip-verify-domain-before-cutover` (verify which domain externally before touching traefik Host rule).
|
||||||
|
|||||||
Reference in New Issue
Block a user