55286495cbea263803e183d88d2cfd22a5399a7a
CI / ruff · mypy · pytest (pull_request) Successful in 1m11s
- docker-socket-proxy в Compose (только GET /containers/*), сокет только у него - app/runtime/docker.py: read-only клиент; видны только контейнеры с меткой tgit.managed=true, чужие id отклоняются до запроса - app/runtime/checks.py: running, health, рестарты за окно, CPU/RAM, ошибки в логе, HTTP-проба; у каждой проверки свой таймаут, отчёт всегда полный - app/runtime/snapshots.py: снапшоты раз в 15 с в container_snapshots - бот: список с 🟢🟡🔴⚪, карточка, «🩺 Запустить проверки», «🔄 Обновить» - деплой ставит метки tgit.sha / tgit.deployed_at на контейнер бота - имя джоба CD без неотрисованного выражения Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
tgit
Телеграм-бот для загрузки кода в репозиторий и работы с ним. Простыми словами — расширенный git внутри Telegram-бота.
Бот принимает .py-файлы и коммитит их в репозиторий на SourceCraft, где автоматически запускается CI/CD;
сообщает статус пайплайна, присылает алерты, отдаёт логи и отвечает на вопросы по ним через LLM.
Учебный проект, курс Python, НИУ ВШЭ.
- ТЗ:
docs/SPEC.md - Архитектура:
docs/ARCHITECTURE.md - Как работаем:
docs/dev/WORKFLOW.md
Основной репозиторий и задачи — Gitea HSE/tgit; SourceCraft — зеркало с CI/CD.
Description
Telegram-бот: загрузка кода в SourceCraft, CI/CD, алерты, логи, LLM-ассистент. Курс Python, НИУ ВШЭ.
1.3 MiB
Languages
Python
96.5%
Shell
2.6%
Makefile
0.5%
Dockerfile
0.3%
Mako
0.1%