В настоящее время непрерывная интеграция (он же процесс CI) является жизненно важной частью любой команды DevOps. В 2019 году мы потратили довольно много времени на наш процесс CI, и нам удалось полностью интегрировать его с нашими рабочими процессами DevOps.

Мы используем 2 разные технологии для бэкенда и внешнего интерфейса, поэтому в качестве первого шага нам пришлось проверить код из 2 разных репозиториев.

В качестве следующего шага мы создаем примечания к выпуску, используя внутреннюю JIRA, содержащую примечания к выпуску. После этого мы строим артефакты. Затем мы проводим модульное тестирование как для серверной части, так и для внешнего интерфейса.

Очень важно было знать, приемлемо ли качество кода. Нам удалось сделать это, определив определенные параметры качества, состоящие из различных показателей, основанных на лучших практиках.

Также необходимо было знать, можно ли развертывать артефакт. Поэтому в качестве следующего шага мы автоматически развертываем артефакт на сервере CI.

В качестве следующего шага мы тестируем остальные конечные точки, чтобы убедиться, что интерфейс может успешно взаимодействовать с сервером. Здесь вступает в действие платформа для тестирования пользовательского интерфейса. В этом случае мы убеждаемся, что пользовательский интерфейс работает нормально.

На любом из вышеперечисленных шагов, если что-то пойдет не так, виновник автоматически получит электронное письмо с объяснением проблемы, а затем произойдет принудительное отклонение кода.

Дайте мне знать, как вы реализовали свой CI!