/posts/why-my-deploys-got-calmer

$ cat post.md

practice

Почему мои деплои стали спокойнее после того, как я перестал “улучшать” прод перед релизом

О вредной привычке вносить инфраструктурные улучшения в тот же день, когда нужно просто аккуратно выкатить изменения.

Долгое время мне казалось логичным объединять полезное с полезным. Если я и так иду в прод, почему бы заодно не поправить пару мелочей в proxy-конфиге, не переименовать каталог, не обновить образ базы и не привести compose-файл к более красивому виду.

Проблема в том, что в момент релиза прод и так находится в чувствительном состоянии. Любая дополнительная переменная увеличивает не пользу, а неопределённость. После нескольких неприятных выкладок я понял простую вещь: деплой должен быть скучным.

Если изменение не связано напрямую с релизом, оно не должно ехать вместе с ним. Улучшения инфраструктуры, рефакторинг конфигов и “небольшие правки” лучше выносить в отдельный цикл. Тогда и причина проблем читается быстрее, и откат становится понятнее.

Что изменилось в моём подходе

  • Я перестал объединять релиз и инфраструктурную уборку.
  • Перед выкладкой оставляю только минимально необходимый diff.
  • Всё, что можно вынести в отдельный deploy, выношу.
  • Если хочется “заодно поправить”, это обычно знак остановиться.

$ cat /etc/motd

infraTales

Личный блог о DevOps, инфраструктуре, инструментах и инженерной практике.