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

Пошаговое руководство по интеграции BeeCR через CI/CD компонент (для GitLab 17+)

Данное руководство поможет вам пройти процесс настройки BeeCR в проекте в современном GitLab 17+ через CI/CD компонент.

⚠️ Примечание: В данном руководстве описано, как настроить проект в современном GitLab 17+ на конкретном примере. Если вам нужна обзорная документация по CI/CD компоненту (GitLab 17+), обратитесь к этому документу. Если же вам нужна обзорная документация по шаблону CI/CD задач (работает как в старых версиях GitLab, так и в более современных GitLab 17+), то обратитесь к этому документу.

📄 Требования

  1. Вы получили доступ к BeeCR SaaS или развернули BeeCR на собственном сервере.
  2. Вы обладаете достаточным уровнем прав для настройки проекта в GitLab и создание токенов доступа.

1️⃣ Создайте токен доступа к GitLab

Сервер BeeCR должен иметь доступ к вашему репозиторию для проведения проверки кода. GitLab предоставляет несколько типов токенов:

Мы рекомендуем вам создать токен проекта или группы. Групповой токен более удобен, если вы собираетесь использовать BeeCR в нескольких проектах в одной группе.

Выполните следующие действия:

  1. Чтобы создать токен, перейдите в "Настройки" проекта или группы, затем в "Токены доступа" (Access Tokens) и создайте новый токен.
  2. Токен должен иметь права как минимум уровня "Developer" и предоставлять доступ к "api".
  3. Присвойте токену осмысленное имя, например, "BeeCR Code Reviewer", поскольку комментарии к коду будут написаны ботом, представляющимся этим именем.

2️⃣ Убедитесь, что на проекте доступен CI/CD

Пропустите этот шаг, если вы знакомы с GitLab CI/CD и уверены, что он доступен на вашем проекте. В противном случае, рекомендуем убедиться, что CI/CD включен, и что хотя бы один CI/CD сервер (GitLab Runner) доступен в настройках вашего проекта:

  1. Перейдите в "Settings" (настройки проекта), затем в "General", и прокрутите до "Visibility, project features, permissions". Опция "CI/CD" должна быть включена.
  2. Перейдите в "Настройки" проекта, затем в "CI/CD", и разверните раздел "Runners". Убедитесь, что хотя бы один CI/CD сервер (проектный, групповой или общесистемный) доступен.

Если на вашем проекте не доступен CI/CD, обратитесь к вашему администратору GitLab, системному администратору или команде DevOps. Также вы можете рассмотреть альтернативный метод интеграции через "Webhook", не требующий CI/CD.

3️⃣ Настройте основные параметры

Определите следующие переменные CI/CD в вашем проекте или группе (или даже общесистемно для всего GitLab сервера, если используемый вами GitLab развернут на ваших серверах и вы имеете соответствующие права доступа):

  • BEECR_API_KEY – API-ключ, предоставленный вам командой BeeCR (необходим только при использовании BeeCR SaaS).
  • BEECR_GITLAB_TOKEN – токен доступа к GitLab, созданный на одном из предыдущих этапов.

4️⃣ Подключите CI/CD компонент

  1. Создайте (или измените, если уже существует) конфигурационный файл .gitlab-ci.yml в корне вашего репозитория. Добавьте этап проверки кода review в список CI/CD этапов (stages). Подключите CI/CD компонент BeeCR с помощью ключевого слова include.
stages:
  - review

include:
  - component: gitlab.com/cvisionlab/beecr/beecr@main

💡 Совет: Если вы используете GitLab, развернутый на ваших собственных серверах и подключение CI/CD компонента с внешнего репозитория не разрешено политикой вашей организации, вы можете склонировать наш репозиторий в ваш GitLab или же просто скопировать и вставить в вашу конфигурацию содержимое YML файла.

5️⃣ Сконфигурируйте CI/CD компонент

Настройки по умолчанию, установленные в предоставленном компоненте CI/CD, удовлетворяют потребностям большинства пользователей. Однако вы можете дополнительно захотеть настроить некоторые параметры.

Ниже приведены несколько примеров. Для получения дополнительной информации о доступных опциях обратитесь к соответствующей документации для CI/CD компонента.

Адрес API сервера

Если вы используете API сервер BeeCR, развернутый на ваших собственных серверах, то вам необходимо задать его адрес. Для этого просто установите опцию url в актуальное значение (например, http://192.168.1.2:8000).

Пример конфигурации:

stages:
  - review

include:
  - component: gitlab.com/cvisionlab/beecr/beecr@main
    inputs:
      url: 'http://192.168.1.2:8000'

Список файлов для проверки

Еще один пример - настройка списка расширений файлов для проверки. По умолчанию проверка включена для файлов со следующими расширениями:

  • Python: .py
  • C/C++: .h, .hpp, .c, .cpp
  • C#: .cs
  • Java: .java
  • Kotlin: .kr
  • Swift: .swift
  • PHP: .php
  • Go: .go
  • Bash/Shell: .sh
  • JavaScript/Typescript: .js, .jsx, .mjs, .mjsx, .ts, .tsx

У вас есть несколько вариантов для модификации этого списка. Вот некоторые сценарии и предложенные методы:

  • Если вы хотите значительно сократить список поддерживаемых расширений (например, оставить только .java), то определите опцию target как \.java$.
  • Если вы удовлетворены списком по умолчанию, но хотите добавить еще одно или несколько расширений, например, .md, то наиболее удобным способом будет определить опцию target-extra как \.md$.
  • Если вы хотите исключить некоторые расширения из списка по умолчанию, например, .sh, то мы рекомендуем определить опцию target-exclude как \.sh$

Более подробно о том, как управлять списком файлов, подлежащих проверке, читайте в разделе документации с обзором CI/CD компонента

Пример:

stages:
  - review

include:
  - component: gitlab.com/cvisionlab/beecr/beecr@main
    inputs:
      target-exclude: '\.sh$'

👍 Заключение

Из данного руководства вы узнали, как настроить проект в современном GitLab 17+ для интеграции с BeeCR, создав токены доступа, подключив CI/CD компонент и настроив основные параметры. Следуя этим шагам, вы подготовили ваш GitLab проект к процессам проверки кода с помощью BeeCR. Если вам нужна дополнительная помощь или дополнительная информация, не стесняйтесь обращаться в поддержку BeeCR.