Commit Graph

10 Commits

Author SHA1 Message Date
MpakobecEx f345844dfe Админка закрылась входом через Telegram
Подпись Telegram-логина проверяется токеном бота, а доступ есть только у записей в bot.admin_users: роль перечитывается из БД на каждом запросе, поэтому выключение пользователя сразу закрывает доступ. Сессия — подписанная HttpOnly-cookie на 12 часов, все формы получили CSRF-токен, первые администраторы засеваются из ADMIN_IDS при старте. Домены в BotFather уже заданы, но NPM и публикацию не включаем — снаружи админка по-прежнему только на loopback.
2026-10-19 03:53:23 +05:00
MpakobecEx d695f1991f У админки теперь постоянные порты, которые не спорят с Portainer
Тестовый контур слушает 8100, прод — 8101 на хосте VPS (8000 занят Portainer). Адрес привязки вынесен в ADMIN_BIND_IP: по умолчанию только loopback, а для nginx-proxy-manager ставится 172.17.0.1, чтобы контейнер NPM мог достучаться до админки, но порт не оказался в интернете. Примеры окружений и DEPLOY обновлены.
2026-10-19 03:46:24 +05:00
MpakobecEx b11676764e У админки появился собственный сервис, а не только место в плане
Каркас FastAPI живёт в admin/ и собирается отдельным образом: главная страница со списком будущих разделов и /healthz для healthcheck, пока без БД и логина. Сервис добавлен в оба compose (порт только на loopback до появления домена), CI теперь собирает и публикует два образа — бота и админку. Настройки админки наследуют общие, но не требуют BOT_TOKEN: сервис запускается, даже пока токен не заполнен.
2026-10-19 03:34:10 +05:00
MpakobecEx 16bd8c06b5 Бэкап событий работает на живом контуре, а не только в режиме пропуска
CI / lint-test (push) Successful in 13s Details
CI / build-push (push) Successful in 11s Details
Проверка на VPS вскрыла две поломки, которые не проявлялись, пока контур не запущен: ssh склеивал аргументы SQL-запроса в одну строку, и запрос падал с синтаксической ошибкой, а импорт на домашнем сервере требовал clickhouse-client, которого там нет. Теперь аргументы экранируются, клиент можно подменить обёрткой через docker compose (CLICKHOUSE_CLIENT), а скрипты в репозитории получили бит выполнения — иначе make check и make backup не запускались из свежего клона.
2026-10-19 03:17:22 +05:00
MpakobecEx c524d20259 Бэкап пропускает прогон, если контур на VPS не запущен
CI / lint-test (push) Successful in 11s Details
CI / build-push (push) Successful in 10s Details
- добавлена проверка запущенных сервисов контура на VPS перед выгрузкой
- если clickhouse не запущен или каталога проекта нет, скрипт пишет причину в лог и выходит с кодом 0
- ошибки ssh по-прежнему считаются ошибкой и возвращают ненулевой код
- версия 0.3.8
2026-10-18 04:48:54 +05:00
MpakobecEx a28bd622c7 Бэкап событий переведён на pull с домашнего сервера
CI / lint-test (push) Successful in 16s Details
CI / build-push (push) Successful in 13s Details
- скрипт бэкапа запускается на домашнем сервере и сам забирает вчерашнюю партицию с VPS по ssh
- входящий ssh на домашний сервер больше не нужен, rsync не требуется
- выгрузка идёт через docker compose на VPS, пароль ClickHouse читается из окружения контейнера
- архив пишется сначала во временный файл, импорт идемпотентен, удаление партиций только после сверки
- env/backup.env.example переписан под новые параметры, cron теперь на домашнем сервере
- версия 0.3.7
2026-10-16 15:57:22 +05:00
MpakobecEx a0fa223eaa Надёжный healthcheck ClickHouse и пример запроса в DEPLOY
CI / lint-test (push) Successful in 16s Details
CI / build-push (push) Successful in 30s Details
- healthcheck ClickHouse переведён на wget по http://127.0.0.1:8123/ping без зависимости от переменных окружения
- wget подтверждён в образе clickhouse-server (используется его entrypoint)
- пример запроса к событиям в DEPLOY выполняется от пользователя контейнера, а не от хостовой оболочки
- версия 0.3.6
2026-10-16 15:31:21 +05:00
MpakobecEx cd9004c10f Документация Блока 3 и версия 0.3.5
- docs/events.md дополнен схемой ClickHouse, агрегатами, регламентом хранения и списком уведомлений в чат логов
- README описывает аналитику, уведомления, бэкап событий и структуру проекта
- DEPLOY.md описывает сервис ClickHouse, проверку, настройку бэкапа и cron
- примеры сообщений коммитов приведены к стилю без префиксов
- версия 0.3.5
2026-10-16 15:30:00 +05:00
MpakobecEx 9f33831971 Единый CHAT_ID и доступ только участникам чата
CI / lint-test (push) Successful in 8s Details
CI / build-push (push) Successful in 11s Details
2026-10-16 02:05:37 +05:00
MpakobecEx a96793e755 Обёртка в Docker
CI / lint-test (push) Successful in 7s Details
CI / build-push (push) Successful in 8s Details
2026-10-16 01:48:28 +05:00