3/5 - (2 голоса)
Какие основные этапы следует выполнить, чтобы CI/CD-цепочка для разработки ПО работала? И как современные разработчики используют для этого бесплатные облачные сервисы? Чтобы ответить на все эти вопросы, необходимо рассмотреть поэтапную инструкцию, разработанную специально от компьютера до облачного сервиса.
- Этап №1 — создание генератора CI/CD-фраз. Например пишется на Python — создаются несколько директорий — ‘cicd-buzz’, ‘buzz’, файлов — ‘generator.py’, ‘init.py’. Последним шагом этого этапа будет выполнение скрипта в директории ‘buzz’.
- Этап №2 — создание автоматизированных тестов. Чтобы разместить unit-тесты, создается папка ‘tests’ в корневой директории с файлом ‘test_generator.py’. В нем сохраняется соответствующий код. А сами тесты из этого файла запускаются с помощью фреймворка ‘pytest’. Python Virtual Environment устанавливается заранее.
- Этап №3 — размещение кодов на веб-сервисе GitHub. Здесь создается репозиторий ‘cicd-buzz’, а файл ‘.gitignore’ — в корневой директории. После чего локально инициализируется Git, с последующей его отправкой на данный веб-сервис.
- Этап №4 — подключение Travis CI.
- Выполняется вход на этот сервис с использованием учетных данных с GitHub.
- Включается сборка по каждому из запросов репозитория.
Сборка кода (тестирование) начинается, как только завершиться активация в Travis.
- Этап №5 — добавление облачного сервиса Better Code Hub. Данный сервис позволит:
- проверить качество кода;
- контролировать результаты разработки;
- получать информацию об угрозах для качества кода.
Его «плюс» в том, что он может интегрироваться с GitHub и Travis.
- Этап №6 — обучение buzz-генератора приему HTTP-запросов, выводу HTML. Последующие этапы нужны для развертывания кода, который уже прошел тестирование. Обертку для buzz-генератора можно сделать на Python Flask, после чего запустить веб-приложение. Теперь оба облачных сервиса займутся проверкой кода.↓
- Этап №7 — контейнеризация веб-приложения. Контейнер с легкой разверткой можно сделать при помощи Doker. Полученный Doker-образ веб-приложения будет при запуске контейнера собираться и запускаться.
- Этап №8 — публикация на Doker Hub. Этот этап поможет упростить развертку контейнеров в разных окружениях, с возможностью отката до предыдущих версий. Понадобиться создать зарегистрироваться на открытой платформе, предназначенной для сборки специализированных контейнерных систем – doker.com.
- Этап №9 — веб-приложения на Heroky. На этой платформе можно размещать масштабируемые веб-приложения после процедуры регистрации. Так появится возможность автоматизации процесса развертки каждой сборки ветки проекта, а настройку CI/CD-цепочки можно считать завершенной.
Обратите внимание: последние четыре этапа включают в себя добавление коммита с последующей отправкой изменений на GitHub.
Необходимо внедрение CI-CD инструментов для разработки, тестирования и внедрения, обращайтесь [email protected]