docs(docs): обновлены ссылки и основная программа роадмапа
Deploy MkDocs to VPS / deploy (push) Successful in 7s

- Зачем: восстановлен доступ к GitHub, изменились учебные стенды и требования к основной программе.
- Что: ссылки для менти возвращены на GitHub; ClickHouse, Kafka и курсовая Clickstream включены в основную программу; уточнены подготовка окружения Python, управление памятью, практика Airflow и вход в DEV1.
- Что: обновлены описание публикации через Gitea и бэклог; убрана ссылка на неподходящий курс ClickHouse.
- Проверка: строгая сборка MkDocs и проверка пробелов прошли; ссылки и задания сверены с учебными репозиториями.
This commit is contained in:
ddadmin committed 2026-09-27 15:36:07 -04:00
1 parent 242a066f42
commit 806417c1bd
6 files changed
+213 -84

No files matched your search

+7 -4
View File
@@ -8,10 +8,13 @@
### Текущее состояние
Роадмап по Data Engineering живёт как Git-репозиторий. Основной origin
размещён в собственной Gitea
([ddmitry/de-roadmap](https://git.dementev.space/ddmitry/de-roadmap)), а
GitHub Pages сохраняется как резерв после восстановления доступа к GitHub:
Роадмап по Data Engineering живет как Git-репозиторий. Основной origin
и работа над материалами остаются в собственной Gitea
([ddmitry/de-roadmap](https://git.dementev.space/ddmitry/de-roadmap)).
После восстановления аккаунта GitHub изменения зеркалируются туда средствами
Gitea. Ссылки для менти ведут на [GitHub](https://github.com/dementev-dev/de-roadmap),
откуда удобно клонировать стенды и делать свои форки. Сайт по-прежнему
публикуется через Gitea Actions на VPS; GitHub Pages сохраняется как резерв.
- Основной контент — монолитный `README.md` (~700 строк) с полным учебным планом.
- Дополнительные материалы — в подпапках (`dwh-modeling/`, `postgres-bookings/`): теория DWH-моделирования, SCD, Data Vault, домашние задания, скрипты.
+27
View File
@@ -2,8 +2,25 @@
Приоритеты: P1 — делаем в первую очередь; P2 — полезно, когда дойдут руки; P3 — идеи под вопросом.
## P1
- [ ] **Проверить синхронизацию GitHub-зеркала `airflow-greenplum`.**
Проверка через `git ls-remote` 2026-09-27: GitHub отстает от Gitea
на коммит `4ed7e6f`, меняющий только `docs/agents/triage-labels.md`.
Учебные материалы совпадают. У `airflow-manual`, `mini-lakehouse-lab`
и `de-roadmap` ветки `main` в Gitea и GitHub совпали; прежнее подозрение
об их отставании по ответам API не подтвердилось.
## P2
- [ ] **Дополнить практику Kafka перед Clickstream.**
В `nifi-kafka-postgres-lab` добавить опыты на существующем потоке:
остановить потребителя и дочитать накопившиеся сообщения; прочитать
события двумя независимыми consumer groups; повторить чтение и проверить
дубли в PostgreSQL. Для каждого опыта описать исходное состояние,
действия и проверку результата. Идея согласована 2026-09-27;
реализация в репозитории стенда еще не начата.
- [ ] **Перенос учебника Airflow в de-roadmap.**
Перенести 9 глав учебника из `airflow-manual` в `airflow/` (de-roadmap).
В `airflow-manual` оставить только стенд (`airflow-docker/`).
@@ -39,6 +56,16 @@
## Сделано
- [x] **Актуализация маршрута и учебных ссылок** - 2026-09-27:
ссылки на стенды, SQL и данные, кнопки репозитория на сайте возвращены
на GitHub; рабочий origin и публикация сайта остаются в Gitea.
Streaming и ClickHouse включены в основную программу перед трудоустройством,
`clickstream-data-platform` стал второй, большой курсовой с критериями
прохождения. Ссылка на курс ClickHouse для аналитика удалена.
venv и JupyterLab перенесены перед курсом Python для продвинутых;
в альтернативу курсу для профи добавлены материалы по управлению памятью
и критерий проверки понимания.
- [x] **Публикация сайта перенесена на Gitea Actions и VPS** —
2026-08-05: настроены repository-scoped host runner, строгая сборка MkDocs,
атомарные релизы, nginx и TLS для `de.dementev.space`; GitHub Pages сохранён
@@ -1,7 +1,8 @@
# Публикация сайта через Gitea Actions и VPS
Статус: реализовано 2026-08-05; механизм синхронизации GitHub-резерва требует
отдельного решения после восстановления доступа к GitHub. Инструкции по
Статус: публикация на VPS реализована 2026-08-05. После восстановления
доступа к GitHub выбран встроенный push mirror Gitea для синхронизации
репозиториев; рабочий origin остается в Gitea. Инструкции по
восстановлению и эксплуатации находятся в
[`project/ops/gitea-vps-site/README.md`](../ops/gitea-vps-site/README.md).
@@ -66,7 +67,11 @@ TLS-сертификат для `de.dementev.space` получает и прод
### Резерв на GitHub Pages
После восстановления доступа к GitHub существующий GitHub workflow продолжает собирать сайт из GitHub-репозитория. Чтобы резерв оставался актуальным, изменения из основной Gitea должны автоматически синхронизироваться с GitHub. Предпочтительный кандидат — встроенный Gitea push mirror; окончательный механизм и его права будут согласованы отдельно после восстановления учётной записи. Резерв доступен по стандартному адресу GitHub Pages, но основной домен направлен на VPS.
Изменения из основной Gitea передаются на GitHub встроенным push mirror.
Ссылки для учащихся ведут на GitHub-зеркала, основной домен остается на VPS.
Workflow в `.github/workflows/deploy-site.yml` сохранен для резервной
публикации. Перед использованием резерва нужно проверить настройки Pages
и успешный деплой: наличие зеркала репозитория само по себе этого не подтверждает.
GitHub Pages считается тёплым резервом контента и холодным резервом домена. При отказе VPS владелец вручную переключает DNS и при необходимости повторно активирует custom domain в настройках GitHub Pages. Допустимы задержка распространения DNS и ожидание выпуска TLS-сертификата; автоматический failover не требуется.
@@ -87,10 +92,10 @@ GitHub Pages считается тёплым резервом контента
| Ошибка сборки ломает опубликованный сайт | Сборка в отдельной версии и атомарное переключение только после успеха |
| Сторонний action выполняет неожиданный код | Workflow состоит из собственных команд и не использует `uses:` |
| Gitea временно недоступна | Уже опубликованный сайт обслуживается независимо от Gitea |
| VPS недоступна или потеряна | Исходники остаются в Gitea; GitHub Pages служит ручным резервом после восстановления GitHub |
| VPS недоступна или потеряна | Исходники остаются в Gitea; GitHub Pages служит ручным резервом после проверки резервной публикации |
| После переключения DNS HTTPS ещё не готов | DNS TTL уменьшается заранее; Certbot запускается сразу после подтверждения публичного HTTP; короткий перерыв принят как допустимый |
| Сертификат GitHub Pages не готов во время аварии | Допускается задержка; на время восстановления используется стандартный адрес GitHub Pages |
| GitHub-резерв отстаёт от Gitea | После восстановления GitHub настраивается автоматическая синхронизация; до выбора механизма резерв не считается тёплым |
| GitHub-резерв отстает от Gitea | Проверяем результат push mirror, совпадение коммитов и резервную сборку; до успешной проверки резерв не считается готовым |
## Проверка реализации
@@ -109,8 +114,13 @@ GitHub Pages считается тёплым резервом контента
Эта спецификация заменяет решения о публикации и custom domain из `project/ADR.md`. Решения того документа о MkDocs Material, структуре файлов и dual-compatible links остаются актуальными.
После реализации нужно обновить `AGENTS.md`, `project/PRD.md` и `project/TODO.md`, чтобы они описывали фактический основной контур публикации. Ссылку на исходный репозиторий в `mkdocs.yml` следует направить на Gitea; ссылку на GitHub можно сохранить как дополнительную после восстановления доступа.
Документация проекта описывает Gitea Actions и VPS как основной контур
публикации. Ссылки репозитория в `mkdocs.yml` направлены на GitHub для менти;
рабочий origin остается в Gitea.
## Открытый вопрос
## Синхронизация GitHub
После восстановления GitHub нужно окончательно выбрать способ автоматической синхронизации резервного репозитория. Базовый кандидат — Gitea push mirror с синхронизацией при каждом push; GitHub при этом становится read-only зеркалом, поскольку mirror перезаписывает расходящиеся изменения.
Способ синхронизации выбран: встроенный Gitea push mirror. Рабочие изменения
вносятся в Gitea, GitHub используется как зеркало для чтения и создания
учебных форков. Нужно отдельно проверить работу зеркал всех стендов и
готовность резервной публикации Pages.