62 lines
5.9 KiB
Markdown
62 lines
5.9 KiB
Markdown
---
|
||
_last_updated_: 2026-07-30T10:25:00Z
|
||
session_id: 2026-07-30-minio-split-on-snolla-pilot
|
||
prev_session_id: 2026-07-24-stostayer-markdown-render-fix
|
||
---
|
||
|
||
# Next session handoff
|
||
|
||
## Эта сессия — MinIO split, Track B3 пилот on-snolla S3-direct-path. ЗАВЕРШЁН ✅
|
||
|
||
Пилот on-snolla: in-place image bump боевого стека 22 под MinIO split (CMS-медиа → vds minio).
|
||
Подтвердил главный риск runbook'а — aws-sdk v2 vs MinIO 2025 — **работает без @smithy pin**.
|
||
|
||
### Что сделано
|
||
- **Build на VDS** образа `registry.kzntsv.site/on-snolla:07db7e3` (digest 9d757d97) из `victor/on.snolla.com@07db7e3`
|
||
(config endpoint `minio.kzntsv.site → minio.vds.kzntsv.site`, snolla 0.42.1 v2, **без бампа package.json** —
|
||
user-решение: сплит без snolla version bump). Push в registry OK (build-warning VERDACCIO_TOKEN в ARG — известный follow-up, не блокер).
|
||
- **Throwaway-staging :5077** из env живого контейнера (8 секретов). robots/home/sitemap 200.
|
||
- **S3-direct gate (главный):** theme asset `/themes/c406…/bootstrap.min.css` на staging → **200, 97324 B == live-public**
|
||
(aws-sdk v2 → vds minio 2025 — compat подтверждена, нет SignatureDoesNotMatch/403).
|
||
- **Sitemap parity** staging==live 3/3 IDENTICAL (`/`, `/c`, `/yandex_…`); `/c`→404 parity с продом.
|
||
- **Portainer PUT стека 22** env-preserving (8/8), `prune:false, pullImage:true` → 200. Node-скрипт in-memory
|
||
(GET+PUT, без temp-файлов — curl `/tmp/` vs node `/tmp/` расходятся на Windows). Container 07db7e3 healthy, mem_limit 512m preserved.
|
||
- **Live-smoke** `https://on.snolla.com`: theme asset 200 97324 B, `/`,`/robots`,`/sitemap`,`/yandex` 200, `/c` 404 parity.
|
||
TLS cert не тронут (LE YR1, CN=on.snolla.com, до Oct 18). Логи: `Server Listening`, aws-sdk v2 EOL warning (ожидаемо), нет крашей.
|
||
- **Закрытие:** compose source-of-truth `host-stacks/vds-kzntsv/on-snolla.compose.yml` обновлён (тег 07db7e3 + endpoint + rollback-коммент);
|
||
`scripts/minio-split-cutover/runbook.md` (новый) — Track B progress-таблица; commit `443713e8`.
|
||
- **Memory:** NEW `aws-sdk-v2-minio-2025-works-no-smithy-pin.md` — @smithy SigV4 regression = v3-only, v2 идёт без пина.
|
||
|
||
### План отката
|
||
PUT стека 22 назад на тег `473923e494db` (rollback-тег в registry, pred endpoint `minio.kzntsv.site`/books-vds, миррор там жив).
|
||
RUVDS DECOMM 2026-07-21 — rollback только образ-тегом.
|
||
|
||
## Recent commits (этот репо, .admin)
|
||
- `443713e8` feat(on-snolla): MinIO split S3-direct-path cutover — stack 22 bump 473923e494db->07db7e3
|
||
- `71dee93e` @wiki: alias pilonuxt -> pilorama98.ru in prose
|
||
- `5a93ac78` wiki(snolla): ingest local admin HTTPS binding
|
||
|
||
## Open треки
|
||
| Трек | Готовность | Entry-point |
|
||
|---|---|---|
|
||
| **MinIO split B3 — остальные 5 сайтов** | ⏳ TODO — пилот on-snolla GREEN, паттерн отработан | `scripts/minio-split-cutover/runbook.md` §B3 + progress-таблица |
|
||
| MinIO split Track A (books-vds minio 2020→2025) | ⏳ TODO — transparent, отдельно | runbook.md §Track A |
|
||
| MinIO split B4 .NET catch-all админ s3 endpoint | ⏳ TODO — `C:\sites\snolla\Web.config` serviceURL → minio.vds.kzntsv.site | runbook.md §B4 |
|
||
| MinIO split B5 Obsidian Remotely Save endpoint | ⏳ TODO — obsidian бакет смиррорен (B1), можно менять endpoint | runbook.md §B5; memory `obsidian-remotely-save-endpoint-after-mirror` |
|
||
| books-task-runner-registry-auth-cred | 🔵 blocked — cred в config-volume, но рабочий образ содержит СТАРЫЙ registryGc; тега master-a3734d5 в реестре нет | `.tasks/STATUS.md` §books-task-runner |
|
||
|
||
## Спроси user'а
|
||
- Какой следующий сайт из 5 бампить (kupimknigi/labtools/labtools.pro/emspb/tandemmebel)? Все 5 уже live на VDS — кандидаты на тот же config-endpoint bump.
|
||
- snolla-евый v3-трек (0.43.1/0.7.8/0.17.2 для stostayer) — HOLD, отдельная история; НЕ подхватывать без GO user (snolla ждёт).
|
||
|
||
## Не делать (preemptive guards)
|
||
- **НЕ бампить snolla-пакеты** на 6 CMS-сайтах — user решил сплит через config-endpoint только, сайты на 0.42.1 v2. snolla v3-трек — HOLD (stostayer-scope).
|
||
- **НЕ пушить образы в `docker.stostayer.ru:443`** с нашего VPN-egress — бан-гочи (см. [[stostayer-push-ban-single-large-push]]). Registry = `registry.kzntsv.site` (vds), build на VDS — ок.
|
||
- **НЕ лезть в прод-БД** stostayer (MSSQL/MariaDB) — vitya остановил. Диагностика через логи контейнера + исходники.
|
||
- **Portainer PUT: НЕ через PS Invoke-RestMethod** (корраптит кириллицу в compose). Node-скрипт in-memory (GET+PUT), НЕ встраивать JSON-payload в double-quoted `bash -c`. API-key работает для stack PUT (200) — JWT не нужен (JWT только для stack CREATE).
|
||
- **curl `/tmp/` vs node `/tmp/` расходятся на Windows** (MSYS vs Win-путь) — НЕ писать temp-файлы через curl `-o /tmp/` и читать из node. In-memory в одном node-скрипте.
|
||
- **После stack GET** (возвращает env-values с секретами) — вычищать temp-файлы. In-memory скрипт = нет утечки.
|
||
|
||
## Memory updates за сессию
|
||
- NEW `aws-sdk-v2-minio-2025-works-no-smithy-pin.md` — v2 vs MinIO 2025 работает без пина; @smithy regression v3-only; 5 сайтов = config-endpoint bump.
|
||
- MEMORY.md index обновлён. |