Интеграция GitLab с Кайтен позволяет:
— получить в комментариях к карточке Кайтен сообщения, которые содержат ссылки на commit’ы, относящиеся к данной карточке;
— автоматически создавать ссылки на Кайтен карточки в каждом коммите в GitLab
— автоматически перемещать карточки в выбранную колонку, если создается ветка в репозитории GitLab;
— автоматически перемещать карточки в выбранную колонку, если относящаяся к карточке ветка вливается в указанную ветку репозитория;
1. Откройте меню. В разделе «Пространства» наведите курсор на пространство, события которого вы хотите интегрировать в календарь. Нажмите на три точки справа от названия пространства, затем в выпадающем меню «Настройки пространства»
В открывшемся окне перейдите в раздел GitLab.
В настройках будет указан GitLab Secret и Webhook URL для вашей компании.
В разделе «Интеграции с репозиториями» нажмите кнопку «Создать интеграцию».
В открывшемся окне введите:
Название интеграции в свободном формате
Название репозитория — slug. Это, например, awesome-project в строчке https://gitlab.com/koshkarik/awesome-project
Префикс
С помощью кастомного префикса в Кайтене автоматически будет создаваться комментарий со ссылкой на коммит в GitLab.
Задайте префикс и используйте данный префикс в коммит-сообщениях. Например, для префикса KAITEN коммит сообщение может быть следующим bug fix KAITEN-157834. (Также есть возможность указать несколько карточек через запятую и без пробела #XXXXX,YYYYY
)
В форму Настройки интеграции добавлена возможность включить галочку «Добавлять коммиты используя только кастомный префикс» и указать пространства, для которых данный префикс будет применяться.
В GitLab в меню выберете Settings → Webhooks.
Введите ваш Webhook URL и Gitlab Secret.
Нажмите кнопку Add webhook.
Карточка может перемещаться автоматически:
— когда создается ветка, в названии которой есть ID карточки
— когда ветка, в названии которой есть ID карточки, мержится в указанную ветку
Выберете доску / колонку в которые будет автоматически передвигаться карточка в зависимости от события
Теперь, если вы создадите ветку в вашем проекте с названием, например, branch-XXXX, где XXXX — id вашей карточки, то карточка переместиться в колонку, которая указана для события branch created. Как называть ветку — неважно, главное, чтобы там был ID карточки.
Если настроить Кайтен как внешний issue tracker в GitLab, то при наличии в коммитах id карточки, GitLab будет делать такие id ссылками на карточки в Кайтене.
Данный функционал предоставляет GitLab: https://docs.gitlab.com/ee/user/project/integrations/custom_issue_tracker.html
Для настройки внешнего трекера перейдите в интеграции и выберите пункт «Custom issue tracker».
Далее добавьте ссылки на Кайтен (на изображении ниже вместо your_domain введите ваш домен Кайтена).
После сохранения данных настроек GitLab будет подставлять в коммитах вместо id карточек ссылки на карточки в Кайтене.
На примере карточки с ID 100:
При создании ветки, например, fix-branch-100, карточка переместится в колонку GitLab Tests / Очередь;
После слияния c веткой master, карточка переместится в колонку GitLab Tests / Готово
Добавление комментариев к карточке на основе коммит-сообщений.
По умолчанию для добавления комментариев по коммитам используется префикс по умолчанию # (пример коммит-сообщения: bug fix #12345)
В форме Настройки интеграции есть возможность указать кастомный префикс и при необходимости включить галочку «Добавлять коммиты используя только кастомный префикс», указав пространства, для которых данный префикс будет применяться.
Если нет никаких интеграций — сработает #.
Если есть интеграция с префиксом и без галочки — сработает префикс и # на всех пространствах.
Если есть интеграция с префиксом и галочкой на конкретном пространстве — сработает префикс только на этом пространстве, а # на всех остальных пространствах. И если карточка расположена и на пространстве к которому применена интеграция, и на другом пространстве, то # для нее сработает.
Если есть интеграция с префиксом и галочкой на конкретном пространстве — сработает префикс только на этом пространстве, а # на всех остальных пространствах. И если карточка расположена и на пространстве к которому применена интеграция, и на другом пространстве, то # для нее сработает.
Если есть интеграция с префиксом и галочкой и указаны все пространства —сработает только данный префикс для всех пространств, а # будет исключена.
Если есть интеграция с префиксом и галочкой и указаны все пространства, но есть и интеграция с префиксом без галочки - то сработает оба префикса и # для всех пространств.
Префикс в коммит-сообщении должен полностью соответствовать префиксу из настроек (раскладка, регистр букв)
Полное удаление настроек для репозитория сбрасывает настройку префикса. Теперь для создания комментариев следует использовать # в коммит-сообщении
В интерфейсе GitLab должны быть включены Push Events в настройках (Settings → Webhooks → Интеграция с Кайтен по url. Например, https://hq.kaiten.ru/gitlabwh)