From 07773ed9632aa207d13e903c459f0e2769998221 Mon Sep 17 00:00:00 2001 From: Repinoid Date: Fri, 2 Oct 2026 08:22:07 +0300 Subject: [PATCH] =?UTF-8?q?docs(todo):=20=D0=BF=D0=B5=D1=80=D0=B5=D1=81?= =?UTF-8?q?=D0=B1=D0=BE=D1=80=D0=BA=D0=B0=20=D0=B8=20=D0=BF=D1=83=D0=B1?= =?UTF-8?q?=D0=BB=D0=B8=D0=BA=D0=B0=D1=86=D0=B8=D1=8F=20=D0=B4=D0=BE=D0=BA?= =?UTF-8?q?=D1=83=D0=BC=D0=B5=D0=BD=D1=82=D0=B0=D1=86=D0=B8=D0=B8=20=D1=81?= =?UTF-8?q?=D1=82=D0=B5=D0=BD=D0=B4=D0=BE=D0=B2=20=E2=80=94=20=D0=BE=D1=82?= =?UTF-8?q?=D0=B4=D0=B5=D0=BB=D1=8C=D0=BD=D0=B0=D1=8F=20=D1=80=D0=B0=D0=B1?= =?UTF-8?q?=D0=BE=D1=82=D0=B0=20=D0=92=20docs/TODO/docs=5Fpublish=5Fstale?= =?UTF-8?q?=5Fversions.md=20=D0=B7=D0=B0=D1=84=D0=B8=D0=BA=D1=81=D0=B8?= =?UTF-8?q?=D1=80=D0=BE=D0=B2=D0=B0=D0=BD=D0=BE:=20-=20=D0=BF=D1=80=D0=BE?= =?UTF-8?q?=D0=B1=D0=BB=D0=B5=D0=BC=D0=B0:=20=D0=BD=D0=B0=20nubes-test=20?= =?UTF-8?q?=D0=B2=20=D0=BF=D1=80=D0=B8=D0=BC=D0=B5=D1=80=D0=B0=D1=85=20?= =?UTF-8?q?=D0=B2=D0=B5=D1=80=D1=81=D0=B8=D1=8F=205.0.5=20(=D0=B2=20profil?= =?UTF-8?q?e.env=203.0.0),=20=D0=BD=D0=B0=20=20=20nubes-dev=202.0.23=20(2.?= =?UTF-8?q?0.0),=20prod=201.0.0=20=D1=81=D0=BE=D0=B2=D0=BF=D0=B0=D0=B4?= =?UTF-8?q?=D0=B0=D0=B5=D1=82;=20-=20=D0=BF=D1=80=D0=B8=D1=87=D0=B8=D0=BD?= =?UTF-8?q?=D0=B0:=20{{VERSION}}=20=D0=BF=D0=BE=D0=B4=D1=81=D1=82=D0=B0?= =?UTF-8?q?=D0=B2=D0=BB=D1=8F=D0=B5=D1=82=D1=81=D1=8F=20=D0=BF=D1=80=D0=B8?= =?UTF-8?q?=20=D1=81=D0=B1=D0=BE=D1=80=D0=BA=D0=B5=20=D0=B8=D0=B7=20profil?= =?UTF-8?q?e.env=20(04:185-198),=20=20=20=D1=81=D0=B0=D0=B9=D1=82=D1=8B=20?= =?UTF-8?q?=D0=BD=D0=B5=20=D0=BF=D0=B5=D1=80=D0=B5=D1=81=D0=BE=D0=B1=D0=B8?= =?UTF-8?q?=D1=80=D0=B0=D0=BB=D0=B8=D1=81=D1=8C=20=D0=BF=D0=BE=D1=81=D0=BB?= =?UTF-8?q?=D0=B5=20=D1=81=D0=BC=D0=B5=D0=BD=D1=8B=20=D0=BD=D1=83=D0=BC?= =?UTF-8?q?=D0=B5=D1=80=D0=B0=D1=86=D0=B8=D0=B8=202026-09-03;=20-=20=D1=87?= =?UTF-8?q?=D1=82=D0=BE=20=D1=81=D0=B4=D0=B5=D0=BB=D0=B0=D1=82=D1=8C:=2004?= =?UTF-8?q?=20--profile=20dev/test=20+=20=D0=B7=D0=B0=D0=BB=D0=B8=D0=B2?= =?UTF-8?q?=D0=BA=D0=B0=20mc=20mirror=20=D1=81=20=D0=92=D0=9C=205.172.178.?= =?UTF-8?q?213=20=20=20(=D0=BA=D0=BE=D0=BC=D0=B0=D0=BD=D0=B4=D1=8B=20?= =?UTF-8?q?=D0=B8=D0=B7=20DOCS=5FPIPELINE/README.md),=20=D0=B7=D0=B0=D1=82?= =?UTF-8?q?=D0=B5=D0=BC=20=D0=BF=D1=80=D0=BE=D0=B2=D0=B5=D1=80=D0=BA=D0=B0?= =?UTF-8?q?=20=D0=B2=D0=B5=D1=80=D1=81=D0=B8=D0=B9=20=D0=BD=D0=B0=20=D0=B6?= =?UTF-8?q?=D0=B8=D0=B2=D1=8B=D1=85=20=D1=81=D1=82=D1=80=D0=B0=D0=BD=D0=B8?= =?UTF-8?q?=D1=86=D0=B0=D1=85;=20-=20=D1=87=D1=82=D0=BE=20=D1=83=D0=B5?= =?UTF-8?q?=D0=B4=D0=B5=D1=82=20=D0=B7=D0=B0=D0=BE=D0=B4=D0=BD=D0=BE:=20?= =?UTF-8?q?=D0=BF=D1=80=D0=B0=D0=B2=D0=BA=D0=B8=20curated/crud/three=5Fapp?= =?UTF-8?q?s.md=20(ab9f7d2,=2039849bf),=20=20=20=D1=81=D1=82=D1=80=D0=B0?= =?UTF-8?q?=D0=BD=D0=B8=D1=86=D1=8B=20k8svalkey/k8s=5Fziti=5Fcontroller/no?= =?UTF-8?q?dered/nifi;=20-=20=D0=BF=D1=80=D0=B5=D0=B4=D1=83=D0=BF=D1=80?= =?UTF-8?q?=D0=B5=D0=B6=D0=B4=D0=B5=D0=BD=D0=B8=D1=8F:=20=D0=BF=D1=83?= =?UTF-8?q?=D0=B1=D0=BB=D0=B8=D0=BA=D0=B0=D1=86=D0=B8=D1=8F=20=3D=20=D0=B4?= =?UTF-8?q?=D0=B5=D0=BF=D0=BB=D0=BE=D0=B9=20(=D1=82=D0=BE=D0=BB=D1=8C?= =?UTF-8?q?=D0=BA=D0=BE=20=D0=BF=D0=BE=20=D0=BA=D0=BE=D0=BC=D0=B0=D0=BD?= =?UTF-8?q?=D0=B4=D0=B5),=20=D0=BF=D1=83=D0=B1=D0=BB=D0=B8=D0=BA=D0=B0?= =?UTF-8?q?=D1=86=D0=B8=D1=8F=20=D0=B1=D0=B5=D0=B7=20=D0=B2=D0=B5=D1=80?= =?UTF-8?q?=D1=81=D0=B8=D0=B8=20=20=20=D0=B2=20URL=20=D1=81=D0=BE=20=D1=81?= =?UTF-8?q?=D1=82=D0=B8=D1=80=D0=B0=D0=BD=D0=B8=D0=B5=D0=BC=20=D1=81=D1=82?= =?UTF-8?q?=D0=B0=D1=80=D1=8B=D1=85=20=D1=84=D0=B0=D0=B9=D0=BB=D0=BE=D0=B2?= =?UTF-8?q?,=20=D1=80=D0=B8=D1=81=D0=BA=20root-=D0=BE=D0=B2=D0=BE=D0=B9=20?= =?UTF-8?q?=D1=81=D0=B1=D0=BE=D1=80=D0=BA=D0=B8=20site/.=20=D0=92=20HISTOR?= =?UTF-8?q?Y-=D0=B7=D0=B0=D0=BF=D0=B8=D1=81=D0=B8=20=D1=80=D0=B0=D0=B7?= =?UTF-8?q?=D0=B4=D0=B5=D0=BB=D0=B0=204=20=D0=B4=D0=BE=D0=B1=D0=B0=D0=B2?= =?UTF-8?q?=D0=BB=D0=B5=D0=BD=D0=B0=20=D1=81=D1=81=D1=8B=D0=BB=D0=BA=D0=B0?= =?UTF-8?q?=20=D0=BD=D0=B0=20=D1=8D=D1=82=D0=BE=D1=82=20TODO.=20=D0=9F?= =?UTF-8?q?=D1=80=D0=BE=D0=B2=D0=B5=D1=80=D0=B5=D0=BD=D0=BE:=202=20=D0=B1?= =?UTF-8?q?=D0=BB=D0=BE=D0=BA=D0=B0=20=D0=BA=D0=BE=D0=B4=D0=B0=20(=D1=87?= =?UTF-8?q?=D1=91=D1=82=D0=BD=D0=BE),=20=D1=80=D0=B0=D0=B7=D0=B4=D0=B5?= =?UTF-8?q?=D0=BB=20=C2=AB=D0=A1=D0=B2=D1=8F=D0=B7=D0=B0=D0=BD=D0=BD=D1=8B?= =?UTF-8?q?=D0=B5=20=D0=B4=D0=BE=D0=BA=D1=83=D0=BC=D0=B5=D0=BD=D1=82=D1=8B?= =?UTF-8?q?=C2=BB=20=D0=BD=D0=B0=20=D0=BC=D0=B5=D1=81=D1=82=D0=B5.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...rud_docs_page_and_manual_pages_pipeline.md | 3 + docs/TODO/docs_publish_stale_versions.md | 77 +++++++++++++++++++ 2 files changed, 80 insertions(+) create mode 100644 docs/TODO/docs_publish_stale_versions.md diff --git a/HISTORY/50_docs/2026-10-02_crud_docs_page_and_manual_pages_pipeline.md b/HISTORY/50_docs/2026-10-02_crud_docs_page_and_manual_pages_pipeline.md index 8e4c2e7..ab70da1 100644 --- a/HISTORY/50_docs/2026-10-02_crud_docs_page_and_manual_pages_pipeline.md +++ b/HISTORY/50_docs/2026-10-02_crud_docs_page_and_manual_pages_pipeline.md @@ -100,6 +100,9 @@ `./TOOLS/scripts/04_build_and_publish_docs.sh --profile TOOLS/config/test`, затем заливка с ВМ `5.172.178.213` (`DOCS_PIPELINE/README.md`, раздел «Публикация: где запускать `mc mirror`»). +Задача вынесена отдельной работой: **`docs/TODO/docs_publish_stale_versions.md`** — там команды, +порядок заливки и что ещё уедет вместе с пересборкой. Сейчас не делаем. + ## 5. Мои ошибки в этой работе - Разделение `pg/` + `apps/` назвал «разделение ответственности, decoupling» — терминологически diff --git a/docs/TODO/docs_publish_stale_versions.md b/docs/TODO/docs_publish_stale_versions.md new file mode 100644 index 0000000..54c6a45 --- /dev/null +++ b/docs/TODO/docs_publish_stale_versions.md @@ -0,0 +1,77 @@ +# Пересобрать и опубликовать документацию стендов (на сайтах старые версии провайдера) + +Дата: 2026-10-02 | Статус: не начато (отдельная работа, по отдельной команде) + +## Суть проблемы + +Опубликованные сайты документации отдают **устаревшую версию провайдера** в примерах +(`required_providers … version = …`). + +| Стенд | На сайте | `VERSION` в `TOOLS/config/<стенд>/profile.env` | Итог | +|---|---|---|---| +| `nubes-test` → `https://tf-docs.nodejsk8s.dev.nubes.ru/nubes-test/` | **5.0.5** | 3.0.0 | устарел | +| `nubes-dev` → `https://tf-docs.nodejsk8s.dev.nubes.ru/nubes-dev/` | **2.0.23** | 2.0.0 | устарел | +| `nubes` (prod) → `https://tf-docs.nodejsk8s.dev.nubes.ru/nubes/` | 1.0.0 | 1.0.0 | совпадает | + +Проверялось на странице `…/<стенд>/curated/postgres/pg_user_db/` (в исходнике там +плейсхолдер `{{VERSION}}`). + +## Причина + +В исходниках `docs/` версии нет — при сборке плейсхолдеры подставляются значениями из +профиля стенда (`TOOLS/scripts/04_build_and_publish_docs.sh:185-198`). Значит сайты +собраны **до** смены нумерации версий (2026-09-03) и с тех пор не пересобирались. + +Дополнительные подтверждения старости публикации: + +- на `nubes-test` нет страниц, которые уже есть на `nubes-dev`: `k8svalkey`, + `k8s_ziti_controller`, `nodered`, `nifi`; +- на `nubes-test` нет правок страницы `curated/crud/three_apps.md` (коммит `ab9f7d2`); +- локальная сборка `site/` (2026-09-28 09:40) — сборка dev-стенда, строки `5.0.5` в ней + нет, то есть на S3 лежит сборка **старше** этого `site/`. + +## Что сделать + +1. Для каждого устаревшего стенда — сборка и публикация: + +```bash +./TOOLS/scripts/04_build_and_publish_docs.sh --profile TOOLS/config/dev +./TOOLS/scripts/04_build_and_publish_docs.sh --profile TOOLS/config/test +``` + +2. Заливка на S3 делается **с ВМ `5.172.178.213`** (у локальной сети S3 рвёт большие + ответы), полный порядок — в `DOCS_PIPELINE/README.md`, раздел «Публикация: где + запускать `mc mirror`»: + +```bash +tar -C site -cf - . | ssh naeel@5.172.178.213 'rm -rf ~/tmp-docs-site && mkdir -p ~/tmp-docs-site && tar -C ~/tmp-docs-site -xf -' +ssh naeel@5.172.178.213 'mc mirror --overwrite --remove ~/tmp-docs-site/ registry/terraform-registry/docs//nubes/' +ssh naeel@5.172.178.213 'mc mirror --overwrite --remove "registry/terraform-registry/docs//nubes/" /var/www/tf-docs//' +``` + +3. Проверить результат на живом сайте: на странице `…/<стенд>/curated/postgres/pg_user_db/` + версия должна совпасть с `VERSION` из `profile.env` (`dev=2.0.0`, `test=3.0.0`, + `prod=1.0.0`), и должны появиться страницы, которых на стенде не было. + +## Заодно уедет (уже закоммичено в `docs/`) + +- `curated/crud/three_apps.md` — страница переписана под схему `pg/` + `apps/` + (коммит `ab9f7d2`) и дополнена разделом «Что пользователь задаёт сам» (коммит `39849bf`). +- страницы, добавленные с прошлой публикации (`k8svalkey`, `k8s_ziti_controller`, + `nodered`, `nifi` — уже видны на dev, но не на test). + +## Осторожно + +- Публикация — это деплой: выполнять только по прямой команде владельца. +- `publish-docs.sh` публикует **без версии в URL** (`mc mirror --overwrite --remove`), + старые файлы удаляются — после публикации проверить, что живые разделы на месте. +- Если `site/` собирался docker-ом от root, mkdocs не сможет перезаписать каталог: + `sudo rm -rf site` или удалить через контейнер (см. `DOCS_PIPELINE/README.md`). + +## Связанные документы + +- `HISTORY/50_docs/2026-10-02_crud_docs_page_and_manual_pages_pipeline.md` — раздел 4: + как это обнаружено (проверка страницы `nubes-test/curated/postgres/pg_user_db/`). +- `DOCS_PIPELINE/README.md` — актуальное описание сборки и публикации. +- `HISTORY/50_docs/2026-10-02_s3_static_website_docs_hosting.md` — хостинг документации + из S3 (находки по static website на RGW).