Работа · МАЙСТРИМ и ИТТАС
Релизы: 30 минут → 6
Java-приложение собирали и выкладывали вручную. Я перевела это на CI/CD, а фронтенд и лендинги стали выкатываться по push — без инженера.
Как было
Java-приложение собирали руками в Apache NetBeans на Windows и вручную выкладывали WAR на Payara Server. Релиз занимал около 30 минут, и каждый раз можно было ошибиться: не та версия, не тот файл, забытый шаг.
Что я сделала
- CI/CD на GitHub Actions с автодеплоем WAR на Payara: сборка, проверка и выкладка — по одному сценарию, одинаково каждый раз.
- Контейнеры. Описала Dockerfile для сервисов компании и настроила публикацию образов в приватный DigitalOcean Container Registry.
- Слои в docker-compose. Инфраструктурные сервисы (Redis, Vault) — в отдельном стеке, бэкенд — в своём. Релиз приложения больше не перезапускает stateful-компоненты.
- Фронтенд по push. 15 фронтенд-приложений и больше 100 лендингов выкатываются через Cloudflare Pages сами, без участия инженера.
- Маршрутизация 300+ доменов на Caddy: подключение нового сервиса перестало требовать ручной правки конфигов.
Раньше, в ИТТАС, я так же строила пайплайны на GitLab CI для 10 Node.js-приложений — от коммита до деплоя без ручных шагов — и сопровождала GitLab Runner’ы.
Результат
Релиз — 6 минут вместо 30, ошибки ручной сборки исчезли, а фронтенд и лендинги команда выкатывает сама.
Чему я научилась
Автоматизировать стоит то, что больнее всего, — и начинать с одного сценария, который работает каждый раз. Хороший пайплайн — это ещё и документация: по нему видно, как приложение на самом деле попадает в продакшен.