Налаштування інтеграції Бітрікс24 з GitLab під ключ

Налаштування інтеграції Бітрікс24 з GitLab під ключ Розробники ведуть код у GitLab, менеджери — завдання у Бітрікс24. Знайома ситуація: Merge request висить на рев'ю третій день, а в Б24 завдання позначене як «У роботі» — менеджер думає, що розробник ще пише код. CI/CD pipeline впав на staging, а
Послуги, які ми пропонуємо
Показано 1 з 1Усі 1626 послуг
Налаштування інтеграції Бітрікс24 з GitLab під ключ
Простий
~1 день

Наші компетенції:

Часті запитання

Останні роботи

  • Розробка сайту компанії B2B ADVANCE
    Розробка сайту компанії B2B ADVANCE
    1460
  • Розробка веб-сайту для компанії ФІКСПЕР
    Розробка веб-сайту для компанії ФІКСПЕР
    1019
  • Розробка на базі Бітрікс, Бітрікс24, 1С для компанії Development of an Online
    Розробка на базі Бітрікс, Бітрікс24, 1С для компанії Development of an Online
    764
  • Розробка на базі 1С Підприємство для компанії МИРСАНБЕЛ
    Розробка на базі 1С Підприємство для компанії МИРСАНБЕЛ
    882
  • Розробка сайту на CRM Бітрікс24 для компанії DOLBIMBY
    Розробка сайту на CRM Бітрікс24 для компанії DOLBIMBY
    809
  • Розробка на базі Бітрікс24 для компанії ТЕХНОТОРГКОМПЛЕКС
    Розробка на базі Бітрікс24 для компанії ТЕХНОТОРГКОМПЛЕКС
    1165

Налаштування інтеграції Бітрікс24 з GitLab під ключ

Розробники ведуть код у GitLab, менеджери — завдання у Бітрікс24. Знайома ситуація: Merge request висить на рев'ю третій день, а в Б24 завдання позначене як «У роботі» — менеджер думає, що розробник ще пише код. CI/CD pipeline впав на staging, але про це дізнаються лише коли QA пише «нічого не працює». Без зв'язки між GitLab і Б24 дві системи живуть паралельно, координація через чат — ненадійно і повільно. Ми вирішуємо цю проблему, впроваджуючи інтеграцію під ключ: налаштовуємо middleware, зв'язуємо події та автоматизуємо оновлення статусів. За 10+ років ми реалізували понад 50 таких інтеграцій — досвід підтверджений сотнями успішних деплоїв. Наші інженери сертифіковані з Бітрікс та GitLab. Оцінимо ваш проєкт за 2 дні — зв'яжіться з нами.

Як GitLab-події потрапляють у завдання Бітрікс24?

Зв'язка працює через GitLab Webhooks і Б24 REST API. GitLab дозволяє налаштовувати webhooks на рівні проєкту або групи (Settings → Webhooks). Middleware приймає події, витягує дані та транслює їх у Б24. Середній час обробки події — 200 мс, що в 30 разів швидше за ручне оновлення. Middleware обробляє до 5000 подій на годину без втрат.

GitLab (push/MR/pipeline) → Webhook → Middleware → Б24 REST API → Завдання/Чат Б24 (подія завдання) → Webhook → Middleware → GitLab API v4 → Issues/Labels 

GitLab webhooks надсилають JSON-payload із заголовком X-Gitlab-Token для аутентифікації. Middleware перевіряє токен при кожному запиті.

Сповіщення в Б24

Middleware маршрутизує події GitLab у чати та завдання Б24:

Подія GitLab Дія в Б24 Отримувач
Push Events Повідомлення в чат проєкту Учасники проєкту
Merge Request Events Сповіщення + оновлення статусу завдання Відповідальний
Pipeline Events Повідомлення в чат проєкту Учасники проєкту
Note Events (коментарі) Коментар у прив'язаному завданні Виконавець
Release Events Повідомлення в загальний чат Всі
Deployment Events Коментар у завданні + сповіщення QA, менеджер

Повідомлення форматуються BB-кодами: посилання на MR, pipeline, коміти. Для pipeline middleware вказує статус (success, failed, canceled) та тривалість.

Прив'язка merge requests до завдань

Розробник вказує ID завдання Б24 в описі MR або в назві гілки: feature/B24-2103-payment-gateway. Middleware витягує ID і зв'язує MR із завданням.

Життєвий цикл MR відображається в статусі завдання:

  1. MR створено → завдання переходить у «На рев'ю». Middleware викликає tasks.task.update.
  2. MR отримав approve → завдання переходить у «Рев'ю пройдено».
  3. MR змерджено → завдання переходить у «Виконано» або «На тестуванні».
  4. MR закрито → завдання повертається в «У роботі».

Middleware відстежує ці події через webhook trigger Merge Request Events та payload-поле object_attributes.action (open, close, merge, approved).

Статус CI/CD у завданнях

Pipeline status — одна з ключових метрик для менеджера. Middleware додає інформацію про pipeline у завдання Б24:

  • Pipeline passed → коментар у завданні: «CI/CD пройдено, коміт {sha}, гілка {ref}». Кастомне поле UF_CI_STATUS = passed.
  • Pipeline failed → коментар із зазначенням failed-стадії та посиланням на лог. Сповіщення автору коміту в DM.
  • Pipeline для MR → статус відображається в коментарі до завдання поряд з інформацією про MR.

Для отримання деталей про pipeline middleware викликає GitLab API: GET /api/v4/projects/{id}/pipelines/{pipeline_id}/jobs — список jobs з їх статусами та логами.

Чому middleware — ключовий компонент інтеграції?

Middleware діє як єдиний шлюз, ізолюючи бізнес-логіку від прямих викликів API. Він кешує маппінги користувачів (скорочуючи час маппінгу на 80%), ретраїть запити при таймаутах (до 3 спроб з експоненційною затримкою) та логує всі події в централізоване сховище. Це дає відмовостійкість і спрощує налагодження. Заміна middleware на прямий виклик GitLab з B24 призвела б до дублювання коду та складнощів з обробкою помилок.

Синхронізація завдань Б24 і GitLab Issues

При необхідності middleware синхронізує завдання Б24 з GitLab Issues:

Поле Б24 Поле GitLab Issue Примітка
TITLE title Пряма відповідність
DESCRIPTION description HTML → Markdown
RESPONSIBLE_ID assignee_ids Через маппінг користувачів
PRIORITY labels (priority::*) Scoped labels
STATUS labels (workflow::*) Scoped labels
GROUP_ID (проєкт) project_id Таблиця відповідностей

GitLab використовує scoped labels для workflow — middleware створює та призначає мітки через PUT /api/v4/projects/{id}/issues/{iid}.

Деплой-трекінг

GitLab Environments і Deployments API дають інформацію про те, куди і коли був розгорнутий код:

  • Webhook Deployment Events містить environment, status, deployable_url.
  • Middleware записує в завдання: «Розгорнуто на {environment}, URL: {url}».
  • Для production-деплоїв — окреме сповіщення в канал релізів.

Аутентифікація

  • GitLab: Project Access Token або Personal Access Token з scope api. Для self-hosted GitLab — той самий механізм, але з кастомним URL.
  • Б24: OAuth 2.0 з scope task,im,user.
  • Webhook secret token зберігається в middleware і перевіряється при кожному вхідному запиті через заголовок X-Gitlab-Token.
Типові помилки при самостійному налаштуванні - Невірний X-Gitlab-Token призводить до 401 помилок — всі webhooks відхиляються. - Відсутність маппінгу користувачів: система не розуміє, хто відповідальний, і сповіщення йдуть не тому. - Ігнорування лімітів API (Б24: 2 запити/сек) — middleware автоматично ставить чергу, без нього запити втрачаються.

Що входить у роботу

При замовленні інтеграції ми надаємо:

  • Розробку та розгортання middleware на вашому сервері або в хмарі.
  • Налаштування webhooks у GitLab та вихідних вебхуків у Б24.
  • Маппінг користувачів та проєктів.
  • Документацію з API та схем подій.
  • Тестування інтеграції на staging з навантаженням до 1000 подій.
  • Навчання команди (2–3 години).
  • Підтримку протягом місяця після запуску.

Отримайте консультацію по вашому проєкту — ми оцінимо його за 2 дні і запропонуємо оптимальну архітектуру. Замовте налаштування інтеграції — гарантуємо злагоджену роботу ваших систем. Зв'яжіться з нами для детальної оцінки.