Перейти к содержанию

Использование CI/CD для сборки

Размещайте исходный код в репозитории, создавайте запросы на слияние для внесения изменений в код и используйте CI/CD для генерации приложения. Включайте пакеты в свое приложение и выводите его в различные среды.

CI/CD — это непрерывный метод разработки ПО, при котором происходит непрерывная сборка, тестирование, развертывание и мониторинг итеративных изменений кода.

Такой итеративный процесс позволяет снизить вероятность разработки нового кода на основе предыдущих версий с ошибками или недостатками. CI/CD позволяет выявлять ошибки на ранних этапах цикла разработки и обеспечивать соответствие всего кода, развертываемого в производстве, установленным стандартам.

Общие термины

Если вы только знакомитесь с CI/CD, начните с часто используемых терминов.

Файл .appseccode-ci.yml

Чтобы использовать CI/CD, необходимо создать файл .appseccode-ci.yml в корне проекта. В этом файле вы указываете список действий, которые вы хотите выполнить, например, протестировать и развернуть ваше приложение. Этот файл имеет формат YAML и особый синтаксис.

Вы можете назвать этот файл как угодно, но наиболее распространенным является имя .appseccode-ci.yml. Используйте редактор пайплайнов для редактирования файла .appseccode-ci.yml и проверки синтаксиса перед коммитом изменений.

Средства выполнения (раннеры)

Средства выполнения (раннеры) — это агенты, выполняющие ваши задания. Они могут работать на физических или виртуальных машинах. В файле .appseccode-ci.yml можно указать образ контейнера, который будет использоваться для выполнения задания. Средство выполнения загружает образ и выполняет задание либо локально, либо в контейнере. Вы можете:

  • Регистрировать средства выполнения для своего автономно управляемого инстанса или использовать уже зарегистрированные.
  • Создать средство выполнения на локальной машине.

Конвейеры (пайплайны)

Пайплайны, или конвейеры, формируются из заданий (jobs) и этапов, или стадий (stages):

  • Задания определяют, что вы хотите сделать. Например, тестирование изменений кода или развертывание в среде staging.
  • Задания группируются по стадиям. Каждый этап (стадия) содержит минимум одно задание. Типичными стадиями могут быть сборка (build), тестирование (test) и развертывание (deploy).

Переменные CI/CD

Переменные CI/CD помогают настраивать задания, делая доступными для них значения, определенные в других местах. Они могут быть указаны в файле .appseccode-ci.yml, настройках проекта или быть динамически сгенерированными предопределенными переменными.

Компоненты CI/CD

Компоненты CI/CD — это переиспользуемые единицы конфигурации пайплайна. С их помощью можно составить конфигурацию всего пайплайна или небольшой части более крупного пайплайна.