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

Подключение GitLab

Результат

Threadory сможет читать issues, merge requests и выбранный код проекта, а при разрешённой записи — создавать задачи и публиковать результаты.

Что потребуется

  • роль администратора или владельца проекта Threadory;
  • GitLab Personal Access Token или project access token для тестового проекта;
  • путь GitLab-проекта в формате group/repository (или полный URL проекта);
  • scopes для чтения и, для closed loop / webhook, api.

Профиль подключения

Параметр Минимум или ожидаемое поведение
Credential Предпочтителен отдельный project access token. Personal access token поддерживается, но его GitLab user станет внешним actor.
Минимальный доступ Для read-only ingestion используйте read_api. Добавляйте api только если Threadory должен создавать issues, публиковать comments или устанавливать project webhook.
Identity Это общий service credential, а не per-user OAuth. GitLab записывает действия от token owner; audit Threadory сохраняет запросившего пользователя.
Направление и entities Inbound: issues, merge requests и выбранные code_file. Outbound-действия с issue/MR требуют api.
Delivery mode Incremental polling выполняется каждые 60 минут. Project webhook ускоряет события MR, issue, note и push; polling остаётся fallback.

Шаги

  1. Откройте Connectors и нажмите Connect у GitLab (или recommended card).
  2. Следуйте интерактивной инструкции в drawer: куда зайти в GitLab, какие scopes (read_api минимум, api для write-back и webhook), как прочитать project path из URL. Ссылки Open GitLab / Open personal access tokens открывают нужные страницы (для self-managed — по полю GitLab base URL в блоке Paste credentials).
  3. При необходимости задайте GitLab base URL, вставьте token и project path или полный URL проекта, нажмите Connect GitLab.
  4. На шаге webhook нажмите Install webhook (secret генерирует Threadory) или Use polling for now. Без webhook реакция на MR/issue медленнее (polling).
  5. Вернитесь к карточке подключения и нажмите Sync now.

Как проверить результат

  • установка отображается на странице Connectors;
  • webhook помечен как установлен либо явно показан polling fallback;
  • sync завершился успешно в Activity;
  • issues и merge requests появились в Knowledge.

Частые проблемы

Симптом Причина Что сделать
Проверка доступа не проходит Неверный URL, token или project path Проверить значения на тестовом проекте, не пересылать token
Чтение работает, создание issue нет Token не имеет права записи Выдать минимальный write scope и переподключить безопасно
Webhook не установлен Нет scope api / прав на hooks, или неверный project path Выдать api, переустановить webhook из меню карточки или оставить polling
События приходят с задержкой Webhook отсутствует или нездоров Проверить состояние webhook на карточке GitLab

Безопасное отключение

Отключение останавливает будущие sync и write-back. Оно не отменяет уже созданные в GitLab issues или comments и не удаляет автоматически импортированные entities Threadory.

  1. Приостановите workflows и approvals, которые могут писать в GitLab.
  2. Экспортируйте нужные данные проекта.
  3. Запишите URL project webhook и отключите connector в Threadory.
  4. Удалите записанный webhook в GitLab, если он остался.
  5. Отзовите token, если он был выделен только этому connector. Не отзывайте общий personal token, пока не найдены остальные consumers.
  6. Примените описанный retention process к импортированным данным, которые требуется удалить.

Убедитесь, что карточка connector исчезла, project webhook отсутствует, а новые sync и write actions не появляются. Для восстановления подключите новый least-privilege token и выполните Sync now. Уже опубликованные записи GitLab нужно исправлять в самом GitLab: reconnect их не откатывает.

Следующий шаг

Подключите tl;dv или Zoom как источник встреч либо пройдите первый closed loop.