docs(history,todo): ручная публикация страницы CRUD на TEST + отметка в TODO

HISTORY (раздел 5, раздел с ошибками стал 6):
- сборка test-стенда без публикации (S3CFG_REGISTRY в несуществующий путь —
  штатного флага «build-only» у 04 нет);
- заливка в S3 (алиас regdocs из secrets/.s3cfg_registry) и копирование на ВМ
  в /var/www/tf-docs/nubes-test/curated/crud/three_apps/ — сайт отдаёт nginx с ВМ,
  а не из S3;
- проверка: живой URL 200, 163789 байт, cmp с локальной сборкой совпадает,
  version 3.0.0, 5.0.5 нет;
- ограничение: в меню других страниц ссылки нет (их навигация старая);
- заметка: ssh naeel@5.172.178.213 без алиаса не пускает, нужен алиас vps;
- в «Мои ошибки» добавлена неверная формулировка про домены.
TODO: добавлен раздел «Что уже сделано вручную (временно)» и следствие — полная
пересборка нужна, чтобы пример появился в меню, а версии совпали с profile.env.
Проверено: разделы 1-6 в HISTORY, структура TODO на месте, блоки кода парные.
This commit is contained in:
Repinoid
2026-10-02 08:29:50 +03:00
parent fe25be9b85
commit 25f9114950
2 changed files with 54 additions and 1 deletions
@@ -103,7 +103,39 @@
Задача вынесена отдельной работой: **`docs/TODO/docs_publish_stale_versions.md`** — там команды,
порядок заливки и что ещё уедет вместе с пересборкой. Сейчас не делаем.
## 5. Мои ошибки в этой работе
## 5. Ручная публикация страницы CRUD на TEST (по команде владельца)
> Команда: «`TEST_STAND/CRUD/README.md` — это опубликуй в Примерах ТЕСТ стенда.
> эта ручная заливка — временная, для демонстрации коллегам».
Сделано **минимально** — одна страница, без полной пересборки сайта:
1. Сборка test-стенда без публикации: `S3CFG_REGISTRY=/nonexistent-s3cfg-disable-publish
./TOOLS/scripts/04_build_and_publish_docs.sh --profile TOOLS/config/test`.
Сборка проходит (mkdocs 1.6.1 системный, 9 с), затем скрипт сам падает на
`Error: S3 config not found` — штатный способ «собрать и не публиковать»,
так как отдельного флага у `04` нет (`grep SKIP/NO_PUBLISH` — пусто).
2. Заливка в S3: отдельный `mc`-алиас `regdocs` из `secrets/.s3cfg_registry`,
затем `mc mirror --overwrite site/curated/crud/three_apps/
regdocs/terraform-registry/docs/nubes-test/nubes/curated/crud/three_apps/`.
3. Доставка на живой сайт: nginx на ВМ **отдаёт сайт из `/var/www/tf-docs/`, а не из S3**
(S3-объект сам по себе в браузере не появляется), поэтому страница скопирована
на ВМ: `tar -C site/curated/crud -cf - three_apps | ssh vps 'mkdir -p
/var/www/tf-docs/nubes-test/curated/crud && tar -C … -xf -'`.
Проверка (живой адрес): `https://tf-docs.nodejsk8s.dev.nubes.ru/nubes-test/curated/crud/three_apps/`
— HTTP 200, 163 789 байт, `cmp` с локальной сборкой — **совпадает байт в байт**;
на странице `version` = 3.0.0, вхождений `5.0.5` — ноль.
⚠️ Ограничение: остальные страницы стенда не тронуты, их меню старое — **ссылки на
новую страницу в меню нет**, она доступна только по прямому адресу. Чтобы она появилась
в разделе «Проверенные примеры» в меню, нужна полная пересборка и публикация стенда — это
отдельная работа в `docs/TODO/docs_publish_stale_versions.md`.
Дополнительно: `ssh naeel@5.172.178.213` без алиаса даёт `Permission denied (publickey)` —
рабочий доступ только через алиас `vps` (`~/.ssh/config` → ключ `~/.ssh/naeel_vm_id_ed25519`).
## 6. Мои ошибки в этой работе
- Разделение `pg/` + `apps/` назвал «разделение ответственности, decoupling» — терминологически
неверно (это про модули кода) и заумно. Владелец: «пиши ПРАВИЛЬНО, не надо натягивать заумности».
@@ -112,6 +144,10 @@
формулировка однобокая.
- В README скрыл факт, что связь между состояниями **ручная** (файл `creds.json`), и подал это
как полную независимость.
- Про домены написал «уникальны **в облаке** — один домен нельзя повесить на два инстанса».
Владелец поправил: в `*_domain` задаётся **имя**, а не домен — полный домен строит платформа
(`flask-crud` → `flask-crud.pythonk8s.dev.nubes.ru`), и вот эти полные имена уникальны.
Исправлено в README стенда и на странице сайта.
- Дважды пропустил главное для читателя-новичка: **какие параметры он задаёт своими значениями**
и **что имена/домены обязаны быть уникальными**. Пришлось напоминать владельцу. Причина одна:
писал про технику (`apply`, выходы, `creds.json`), а не про то, что нужно человеку в начале.