Полное введение в CI/CD
DevOps принес с собой рост CI/CD. В нынешних условиях методы CI/CD являются наиболее распространенным выбором для сокращения времени цикла разработки и поставки программного обеспечения. В этой статье мы предоставим вам больше информации об этом понятии, их преимуществах и о том, как выполняются эти практики.
Что такое непрерывная интеграция?
В практике CI разработчики создают, запускают и тестируют код на своих собственных рабочих станциях, прежде чем передавать код в репозиторий контроля версий. После внесения изменений в репозиторий запускается цепочка событий. Типичным первым шагом в этой цепочке является сборка последней версии исходного кода. Если сборка прошла успешно, выполняются модульные тесты. Если модульное тестирование проходит успешно, сборка развертывается в тестовых средах, где выполняются системные тесты (обычно с использованием автоматизированных тестов). Группа уведомляется о состоянии этого процесса, и предоставляется отчет с такими подробностями, как номер сборки, дефекты и количество тестов.
Итак, что такое непрерывная интеграция? Непрерывная интеграция — это практика разработки, которая помогает обеспечить совместную работу компонентов программного обеспечения. Интеграция должна выполняться часто; по возможности ежечасно или ежедневно.
Что такое непрерывная доставка?
Непрерывная поставка (CD) — это возможность развертывания интегрированного кода в рабочей среде без вмешательства человека. На практике CD начинается там, где заканчивается непрерывная интеграция.
В зависимости от политик и процессов, определенных командами, разработчики могут выполнять следующие действия с CI/CD:
Шаг 1: Перед фиксацией изменений разработчики проверяют успешность текущей сборки. Если нет, исправьте ошибки, прежде чем вносить новые изменения.
Шаг 2: Если текущая сборка прошла успешно, сбросьте рабочую станцию с конфигурацией сборки.
Шаг 3: Создавайте и тестируйте локально, чтобы убедиться, что обновление не нарушает какие-либо функции. В случае успеха зафиксируйте новые изменения.
Шаг 4: Разрешить CI завершить с новыми изменениями.
Шаг 5: В случае сбоя сборки остановите и исправьте ошибки на локальных рабочих станциях. Вернитесь к шагу 3.
Шаг 6: Если сборка прошла успешно, продолжайте работу над другими элементами.
Рабочий процесс CI/CD
Конвейер CI/CD — это путь доставки единицы изменения, который начинается от разработки до поставки и обычно состоит из следующих основных этапов:
Фаза 1: Фиксация
Когда разработчики завершают изменение, они фиксируют это изменение в репозитории.
Фаза 2: Сборка
Исходный код из репозитория интегрирован в сборку.
Этап 3. Автоматизация тестов
Автоматические тесты запускаются для сборки. Автоматизация тестирования является важным элементом любого конвейера CI/CD.
Этап 4: развертывание
Готовая версия поступает в производство.
Важность автоматизации тестирования для CI/CD
Автоматизация тестирования является важнейшим компонентом любого конвейера CI/CD. Преимущества применения CI/CD не могут быть реализованы при отсутствии автоматизированного тестирования и низком уровне тестового покрытия. Команды должны выполнять автоматизированное тестирование на всех уровнях, включая модульное, интеграционное и системное тестирование.
Вывод
Внедрение непрерывной интеграции (CI) и непрерывной доставки (CD) находится на подъеме, этот рост, возможно, указывает на то, как современные разработчики подходят к созданию отличных продуктов. В данном контексте CI/CD лежит в основе DevOps, а CI и CD составляют два наиболее важных процесса в любом конвейере DevOps. Так что сейчас самое время начать учиться КИ/КД если вы этого не сделали, это будет ценный набор навыков с большим спросом в будущем.