TGViewer
Библиотека девопса | DevOps, SRE, Sysadmin Библиотека девопса | DevOps, SRE, Sysadmin @devopsslib · 10.4K subscribers
Post #4459 1.4K
😤 «Я ненавижу GitHub Actions всей душой»

Разработчик написал эмоциональный текст о том, почему GitHub Actions — это боль. Переводим и разбираем аргументы.

Главные претензии:

1. YAML-ад:
name: CI
on:
push:
branches: [main]
pull_request:
branches: [main]
jobs:
test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Setup Node
uses: actions/setup-node@v3
with:
node-version: '18'
- run: npm ci
- run: npm test


Выглядит просто? Но здесь довольно просто докинуть багов:

• Опечатка в node-version → silent fail
• Забыл @v3 в actions → неожиданная версия
• Отступы не там → непонятная ошибка

2. Дебаг — это пытка

В других CI можно:

• Подключиться по SSH к раннеру
• Запустить локально (GitLab Runner)
• Посмотреть полные логи

В GitHub Actions:

• Логи обрезаны
• Нельзя зайти на раннер
• Локальный запуск через костыли (act)
• Цикл «коммит → push → wait → fail» занимает минуты

3. Секреты — русская рулетка:
- name: Deploy
env:
API_KEY: ${{ secrets.API_KEY }}
run: ./deploy.sh


Проблемы:

• Секрет не установлен? Пустая строка
• Опечатка в имени? Пустая строка
• Секрет в форке? Не работает
• Дебажить? Удачи, secrets маскируются в логах

4. Кеширование — лотерея:
- name: Cache node modules
uses: actions/cache@v3
with:
path: ~/.npm
key: ${{ runner.os }}-node-${{ hashFiles('**/package-lock.json') }}


Проблемы:

• Кеш иногда не восстанавливается
• Иногда восстанавливается битый кеш
• Лимит 10 GB → старые кеши удаляются

5. Версии actions — dependency hell:
- uses: actions/checkout@v3      # Какая v3? v3.0? v3.5?
- uses: actions/setup-node@v3 # Deprecated через месяц
- uses: docker/build-push-action@v4 # Ломает старые workflow


• Нет lock-файла для actions
• Breaking changes в минорных версиях
• @main — может сломаться завтра
• @sha — нечитаемо и надо обновлять вручную

💬 Как у вас с GitHub Actions? Всё спокойно или тоже есть дровишки в огонь?

📍 Навигация: Вакансии • Задачи • Собесы

🐸 Библиотека devops'a

#пульс_индустрии
  • 💯 3
More from @devopsslib
  1. Sep 25, 2026🤖 ИИ-агенту теперь можно поставить задачу прямо в GitLab — и не расписывать каждый следую…
  2. Sep 25, 2026✨ Как настроить PostgreSQL для продакшен-нагрузок При переходе к продакшен-нагрузкам важно…
  3. Sep 18, 2026От исходного кода до процессора: разберись, как работает программа 💻 Стартует практически…
  4. Sep 15, 2026😭 Как не потратить недельный лимит AI-кодинга за три дня? Разберём на вебинаре, как трати…
  5. Sep 15, 2026👩‍💻 Bash-скрипт для мониторинга сервисов Полноценный мониторинг вроде Zabbix или Prometh…
  6. Sep 13, 2026🌸 Вселенная намекает: пора уже начать этот курс С 14 сентября цены в Proglib Academy выра…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →