sadqwes English
← Все кейсы

Работа · МАЙСТРИМ и ИТТАС

Релизы: 30 минут → 6

Java-приложение собирали и выкладывали вручную. Я перевела это на CI/CD, а фронтенд и лендинги стали выкатываться по push — без инженера.

РезультатРелиз с 30 до 6 минут, ошибки ручной сборки ушли
GitHub ActionsGitLab CIDockerCloudflare PagesCaddyPayara

Как было

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, ошибки ручной сборки исчезли, а фронтенд и лендинги команда выкатывает сама.

Чему я научилась

Автоматизировать стоит то, что больнее всего, — и начинать с одного сценария, который работает каждый раз. Хороший пайплайн — это ещё и документация: по нему видно, как приложение на самом деле попадает в продакшен.

← Все кейсы