Найти тему
Order of Magnitude .

Этапы конвейера DevOps

В этой статье хотим рассказать про 8 этапов пайпланйа (или конвейера) DevOps, которые мы в Order of magnitude используем в работе. 1. Планирование.

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

2. Код.

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

3. Сборка.

Как только разработчик завершает поставленную задачу он размещает свою часть кода в общий репозиторий.Запускается серия сквозных, интеграционных и модульных тестов для выявления ошибок. Если сборка не удалась или каакой-либо из тестов завершился ошибкой, разработчик получит уведомление о необходимости решения проблемы. Постоянно проверяя изменения кода в общем репозитории и выполняя сборки и тесты, мы можем минимизировать проблемы интеграции, возникающие при работе с общей кодовой базой и выявить критические ошибки на ранних этапах жизненного цикла разработки.

4. Тестирование.

После успешной сборки она автоматически развертывается в промежуточной среде для более глубокого тестирования. Промежуточная среда может быть существующей службой хостинга или новой средой, подготовленной как часть процесса развертывания. Такая практика автоматического предоставления новой среды во время развертывания называется «инфраструктура как код» (IaC) и является основной частью многих конвейеров DevOps. После развертывания приложения в тестовой среде выполняется серия ручных и автоматических тестов. Ручное тестирование может быть традиционным пользовательским приемочным тестированием (UAT), когда люди используют приложение, как клиент, чтобы выделить любые проблемы или уточнения, которые необходимо решить перед развертыванием в производственной среде. В то же время автоматические тесты могут запускать сканирование безопасности для приложения, проверять наличие изменений в инфраструктуре и соответствие передовым методам защиты, тестировать производительность приложения или запускать нагрузочное тестирование.

To be continued