diff --git a/TOOLS/scripts/04_build_and_publish_docs.sh b/TOOLS/scripts/04_build_and_publish_docs.sh index cd3bacd..220702e 100755 --- a/TOOLS/scripts/04_build_and_publish_docs.sh +++ b/TOOLS/scripts/04_build_and_publish_docs.sh @@ -164,6 +164,13 @@ if [[ -n "${MKDOCS_DOCS_DIR:-}" ]]; then mkdir -p "${MKDOCS_DOCS_DIR}/curated" cp -r "${ROOT_DIR}/docs/curated/"* "${MKDOCS_DOCS_DIR}/curated/" 2>/dev/null || true fi + # Картинки схемы зависимостей (docs/diagrams/*.svg|png) — чтобы их можно было + # показывать на опубликованных страницах. Исходники (.mmd, .py) не копируются. + if [[ -d "${ROOT_DIR}/docs/diagrams" ]]; then + mkdir -p "${MKDOCS_DOCS_DIR}/diagrams" + cp "${ROOT_DIR}/docs/diagrams/"*.svg "${MKDOCS_DOCS_DIR}/diagrams/" 2>/dev/null || true + cp "${ROOT_DIR}/docs/diagrams/"*.png "${MKDOCS_DOCS_DIR}/diagrams/" 2>/dev/null || true + fi fi # Per-стенд подстановка во все скопированные Markdown-файлы. diff --git a/docs/diagrams/README.md b/docs/diagrams/README.md index 236897b..8b2d8fc 100644 --- a/docs/diagrams/README.md +++ b/docs/diagrams/README.md @@ -50,6 +50,19 @@ python3 docs/diagrams/render_infra_diagram.py (`/usr/share/fonts/truetype/dejavu/DejaVuSans.ttf`, `...-Bold.ttf`). Сторонние библиотеки для SVG не нужны — SVG формируется текстом. +### Публикация картинок на сайте + +Скрипт `TOOLS/scripts/04_build_and_publish_docs.sh` копирует **только картинки** +(`docs/diagrams/*.svg`, `*.png`) в публикуемый `docs_dir` → `diagrams/`: исходники (`.mmd`, `.py`) +на сайт не попадают. Поэтому картинку можно вставлять в опубликованные страницы относительной +ссылкой, например со страницы `docs/curated/pipeline/vdc_edge_ip_snat.md`: + +```markdown +![Схема зависимостей облачных сервисов](../../diagrams/infra_services_diagram.svg) +``` + +Изменения в `docs/diagrams/` попадают на сайт только при следующей публикации документации. + Для Mermaid-версии нужен рендерер (`mermaid.ink`, `mmdc` или предпросмотр Markdown в VS Code); в этом репозитории использовался `mermaid.ink` через `python3` + `urllib`.