Перейти к содержанию

srekit

srekit — это CLI для генерации текстовых артефактов, с которыми SRE работают каждый день: investigation log'ов, постмортемов, runbook'ов, RFC, отчётов дежурного, SLO, политик бюджета ошибок, capacity plan'ов, ретро, changelog'ов и лицензий — всё из embedded Markdown-шаблонов.

Маленький, сфокусированный и самодостаточный: один бинарник, в который через //go:embed зашиты все шаблоны, плюс прозрачный fallback на кастомные шаблоны, которые ты держишь под своим git-remote'ом.


Зачем srekit

SRE-работа порождает массу структурированных документов, которые на 80 % читаются одинаково и различаются только в 20 % сути. Писать их с нуля — терять время и стабильно забывать секции, которые потом хотелось бы иметь. Генератор с opinionated, peer-reviewed шаблонами убирает шаблонщину и оставляет внимание на сам инцидент, RFC или постмортем.

Что внутри

  • 11 команд-генераторовtask, license, postmortem, rfc, runbook, changelog, oncall-report, slo, ebp, capacity, retro.
  • Шаблоны как контракт — каждый шаблон билингвальный (русские заголовки + английские технические термины), идёт embedded и переопределяется кастомной директорией под твоим git-remote'ом.
  • Полный жизненный цикл шаблоновtemplates init / pull / list / validate / diff / upgrade, с настоящим 3-way merge на upgrade.
  • JSON-вывод — каждый генератор поддерживает --json для пайплайнов в jq и другие тулзы.
  • Детерминирован — никаких сетевых вызовов в горячем пути, никакого скрытого состояния. Автор / email / репо резолвятся из локального конфига и git.

Как выглядит

# Сгенерить постмортем с сегодняшней датой и автором из git
srekit postmortem --title "API outage" --severity SEV-1 \
  --start 2026-05-06T08:00Z --end 2026-05-06T09:30Z \
  --owner "@oncall" --out postmortem-2026-05-06.md

# Пайп генератора в jq для скриптов
srekit task --title "Tail latency on api-gw" --json | jq '.id'

# Управление кастомными шаблонами
srekit templates init     # сделать свою копию
srekit templates list     # посмотреть что переопределено
srekit templates upgrade  # 3-way merge новых embedded-изменений

Дальше

  • Старт — установка, первая команда, первый конфиг.
  • Обзор команд — полная поверхность CLI.
  • Кастомные шаблоны — храни свои шаблоны под git и забирай upstream-изменения через 3-way merge.
  • jtprogru/sre-templates — готовый репозиторий шаблонов ровно в той раскладке, которую ждёт srekit; склонируй его, нацель srekit на него или форкни как отправную точку.
  • Рецепты — практические пайплайны (jq, on-call ротация, CI).