Привет, друзья! 👋
Сейчас все обсуждают лимиты на токены у ИИ-моделей, а я упёрся в лимит там, где совсем не ждал: в бесплатные минуты GitHub Actions.
Это случилось при активной разработке моего пет-проекта, агрегатора IT-вакансий. Последние спринты я выжимал из проекта максимум проверок: типы, стиль, сборка, тесты, покрытие, сканирование секретов, статический анализ и недавно ещё динамическое сканирование сайта. Всё это запускается на каждый pull request, и такие же проверки выполняются локально перед каждым push. В итоге 10 заданий в CI и больше 1150 автоматизированных тестов.
Сегодня CI перестал запускаться: бесплатная квота в 2000 минут в месяц закончилась, до её обновления осталось 5 дней. По статистике за месяц израсходовано 2026 минут.
Что показал разбор расхода времени:
▪️ 🔁 Все 10 заданий запускаются на каждый push, даже если я поправил одну строчку в документации. Хук pre-push проверяет только изменённые компоненты, а в CI такого условия не было.
▪️ 2️⃣ Каждый PR запускает CI дважды: при открытии и ещё раз после слияния в основную ветку.
▪️ 🏠 Локальные проверки в хуке pre-push работают как раньше, поэтому разработку лимит не остановил. CI я отключил целиком до обновления квоты и включу обратно в начале ноября.
Главный вывод: чем больше автоматических проверок, тем важнее считать их цену. Раньше я думал только о том, что проверять, и ни разу не прикинул, сколько это стоит в минутах. Теперь завёл отдельную задачу: запускать проверки только для того, что изменилось, и убрать лишние повторные запуски.
Следующий шаг: сократить расход, не потеряв ни одной проверки. Следите за продолжением! 🚀