Что такое CI\CD
Содержит три формы:
- Continuous Integration (CI)
- Continuous Delivery (CD)
- Continuous Deployment (CD)
Этапы CI/CD
- Написание кода.
- Сборка.
- Ручное/Автоматические тестирование.
- Релиз.
- Развертывание.
- Поддержка и мониторинг.
- Планирование.
Плюсы минусы.
Метод обеспечивает оперативность вывода нового функционала продукта (работа с запросами клиентов). Как правило, это считанные дни или недели. В то же время при классическом подходе к разработке клиентского софта это может занять год.
Кроме того, команда разработки получает пул альтернатив кода, что оптимизирует затраты ресурсов на решение задачи (за счет автоматизации первичного тестирования функционала).
Качество продукта повышается за счет параллельного тестирования функциональных блоков будущей системы. Узкие места и критические моменты фиксируются и отрабатываются еще на ранних стадиях цикла.
Тем не менее, руководители проектов ошибочно принимают методологию как панацею и стремятся внедрить ее во все свои разработки. При недостатке опыта приводит к усложнению работ по IT-продуктам компании.
Также заслуживает внимания и организация взаимодействия между проектными группами, поскольку CI/CD сильно завязан на человеческий фактор. Инженеры, scrum-специалисты, аналитики, dev-группы и другие функциональные единицы должны работать в единой экосистеме с адекватным руководством и проектным управлением.
Инструменты для CI/CD
- GitLab, Github.
- Docker, Kubernetes
- Travis-CI, Circle-CI, Jenkins, TeamCity