Акмалов Артур

Gitlab auto assign reviewer assignee merge request

Gitlab auto assign reviewer for merge request

Gitlab автоматическое назначение ответственных (assignee и reviewers). Ссылка на github

Задача: при создании merge request, автоматический проставлять код ревьюверов. Чтоб не делать этого вручную каждый раз

Подготовка

Для отслеживания создания merge request можно использовать разные события:

  • Gitlab CI workflow event
  • Schedules
  • Прочие события

Я буду использовать workflow — merge request event, для этого добавил в workflow следующее:

workflow:
  rules:
    - if: $CI_PIPELINE_SOURCE == "merge_request_event" 

Вариант 1. Gitlab CI

добавил API Token в переменные Settings -> CI/CD -> Variables

Скрипт на github, логика следующая:

  1. Получить последний merge request ID
  2. Получить ID автора merge request
  3. Назначить Assigne = ID Автора
  4. Назначить Reviewers = из переменной  Reviewers(list)

Вариант 2. Python script

Простой скрипт использует gitlab api с помощью библиотеки python-gitlab 

Необходимо подставить свои значения Python/settings.py

Данный вариант более гибкий и удобный в плане доработок под разные условия. 

Вариант 3. Средствами самого Gitlab

Скорее всего этот функционал уже есть в Ultimate версии подписки, не подробной информации как гибко и удобно настраивать не нашел. Это был бы самый оптимальный и простой способ.

Подписаться
Уведомить о
guest
0 Комментарий
Межтекстовые Отзывы
Посмотреть все комментарии