Перейти к основному содержимому

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

Подключение вашей учетной записи GitLab к dbt Cloud обеспечивает удобство и дополнительный уровень безопасности для dbt Cloud:

  • Импортируйте новые репозитории GitLab несколькими щелчками мыши во время настройки проекта dbt Cloud.
  • Клонируйте репозитории, используя HTTPS вместо SSH.
  • Переносите разрешения пользователей GitLab в dbt Cloud или в git-действия dbt Cloud CLI.
  • Запускайте сборки непрерывной интеграции при открытии запросов на слияние в GitLab.
    • GitLab автоматически регистрирует вебхук в вашем репозитории GitLab для обеспечения бесшовной интеграции с dbt Cloud.

Подключение вашего аккаунта GitLab к dbt обеспечивает удобство и дополнительный уровень безопасности для dbt:

  • Импортируйте новые репозитории GitLab в пару кликов во время настройки проекта в dbt.
  • Клонируйте репозитории по HTTPS вместо SSH.
  • Передавайте пользовательские права GitLab в dbt или в git‑действия CLI dbt.
  • Запускайте сборки Continuous integration при открытии merge request’ов в GitLab.
к сведению

При настройке репозитория в dbt GitLab автоматически:

  • Регистрирует webhook, который запускает задания пайплайна в dbt.
  • Создаёт project access token в вашем репозитории GitLab, который отправляет статус выполнения задания обратно в GitLab с использованием API dbt для CI‑заданий. dbt автоматически обновляет этот токен за вас.

Требуется аккаунт GitLab Premium или Ultimate.

В зависимости от вашего плана используйте следующие инструкции для интеграции GitLab с dbt:

Для планов dbt Developer и Starter

Прежде чем вы сможете работать с репозиториями GitLab в dbt, необходимо подключить ваш аккаунт GitLab к пользовательскому профилю. Это позволяет dbt аутентифицировать ваши действия при взаимодействии с Git‑репозиториями. Перед подключением аккаунта обязательно ознакомьтесь с ограничениями планов Team и Developer.

Чтобы подключить аккаунт GitLab:

  1. В dbt нажмите на имя вашего аккаунта в левом боковом меню и выберите Account settings.
  2. В разделе Your profile выберите Personal profile.
  3. Прокрутите страницу вниз до раздела Linked accounts.
  4. Нажмите Link справа от вашего аккаунта GitLab.

Когда вы нажмете Связать, вы будете перенаправлены в GitLab и вам будет предложено войти в свою учетную запись. Затем GitLab запросит ваше явное разрешение:

Экран авторизации GitLabЭкран авторизации GitLab

После того как вы примете, вы должны быть перенаправлены обратно в dbt Cloud, и вы увидите, что ваша учетная запись была связана с вашим профилем.

После подтверждения вы будете перенаправлены обратно в dbt, где увидите, что ваш аккаунт был связан с вашим профилем.

Требования и ограничения

Тарифы dbt Team и Developer используют один GitLab deploy token, который создаётся первым пользователем, подключившим репозиторий. Это означает, что:

  • Все репозитории, к которым пользователи получают доступ из dbt platform, должны принадлежать группе GitLab.
  • Все Git-операции (например, коммиты и push’и) из Studio IDE отображаются как выполненные от имени одного и того же deploy token.
  • Правила push в GitLab могут отклонять push’и, выполненные через dbt, особенно когда несколько пользователей делают коммиты с использованием одного deploy token.

Для поддержки более сложных Git‑процессов и корректной работы с коммитами от нескольких пользователей рекомендуется перейти на тариф Enterprise, который предоставляет более гибкие стратегии аутентификации Git.

Для тарифов dbt Enterprise

Клиенты dbt Enterprise и Enterprise+ получают дополнительное преимущество — возможность использовать собственное OAuth‑приложение GitLab в dbt. Этот уровень обеспечивает повышенную безопасность, поскольку dbt будет:

  • Принудительно применять авторизацию пользователей через OAuth.
  • Передавать пользовательские права доступа к репозиториям GitLab (чтение / запись) в dbt или в Git‑действия CLI dbt.

Чтобы подключить GitLab в dbt, администратор аккаунта GitLab должен:

  1. Настроить OAuth‑приложение GitLab.
  2. Добавить приложение GitLab в dbt.

После выполнения этих шагов администратором, разработчикам dbt необходимо:

  1. Лично пройти аутентификацию в GitLab из dbt.

В GitLab перейдите в настройки вашей группы и выберите Приложения. Здесь вы увидите форму для создания нового приложения.

Настройка OAuth‑приложения GitLab

Мы рекомендуем, чтобы перед настройкой проекта в dbt администратор аккаунта GitLab создал OAuth‑приложение в GitLab для использования в dbt.

В GitLab при создании вашего группового приложения введите следующее:

ПолеЗначение
Названиеdbt
Redirect URIhttps://YOUR_ACCESS_URL/complete/gitlab
Конфиденциальное
Области доступа (Scopes)✅ api
Loading table...

Замените YOUR_ACCESS_URL на соответствующий URL доступа для вашего региона и плана.

Форма приложения в GitLab должна выглядеть следующим образом после заполнения:

Форма группового приложения GitLabФорма группового приложения GitLab

Нажмите Сохранить приложение в GitLab, и GitLab сгенерирует ID приложения и Секрет. Эти значения будут доступны даже если вы закроете экран приложения, так что это не единственный шанс их сохранить.

Если вы являетесь клиентом Business Critical, использующим ограничения по IP, убедитесь, что вы добавили соответствующие CIDR GitLab в ваши правила ограничения IP, иначе подключение к GitLab не удастся.

Добавление OAuth‑приложения GitLab в dbt

После того как вы создали приложение GitLab, необходимо указать информацию о нём в dbt. В dbt администраторы аккаунта должны перейти в Account Settings, нажать на вкладку Integrations и раскрыть раздел GitLab.

Navigating to the GitLab Integration in dbtNavigating to the GitLab Integration in dbt

В dbt введите следующие значения:

ПолеЗначение
Экземпляр GitLabhttps://gitlab.com
ID приложенияскопируйте значение из приложения GitLab
Секретскопируйте значение из приложения GitLab
Loading table...

Обратите внимание, если у вас есть специальная хостинговая версия GitLab, измените Экземпляр GitLab, чтобы использовать предоставленное для вашей организации имя хоста, например https://gitlab.yourgreatcompany.com/.

После заполнения формы в dbt нажмите Save.

Затем вы будете перенаправлены в GitLab и вам будет предложено войти в свою учетную запись. GitLab запросит ваше явное разрешение:

Экран авторизации GitLabЭкран авторизации GitLab

После того как вы примете запрос, вы будете перенаправлены обратно в dbt, и ваша интеграция будет готова к тому, чтобы разработчики вашей команды могли выполнить персональную аутентификацию.

Персональная аутентификация с GitLab

Разработчики dbt на тарифных планах Enterprise или Enterprise+ должны каждый отдельно подключить свои профили GitLab к dbt, поскольку права чтения и записи в репозиторий dbt для каждого разработчика проверяются в Studio IDE или CLI dbt.

Чтобы подключить личную учетную запись GitLab:

  1. В dbt нажмите на название вашей учетной записи в меню слева и выберите Account settings.

  2. Выберите Личный профиль в разделе Ваш профиль.

  3. Прокрутите вниз до Связанные учетные записи.

Если ваша учетная запись GitLab не подключена, вы увидите сообщение «No connected account». Выберите Link, чтобы начать процесс настройки. Вы будете перенаправлены в GitLab, где потребуется авторизовать dbt на экране предоставления доступа.

Authorizing the dbt app for developersAuthorizing the dbt app for developers

После подтверждения авторизации вы будете перенаправлены обратно в dbt, и там вы должны увидеть подключенную учетную запись. Теперь вы готовы начать разработку в Studio IDE или с помощью CLI dbt.

Устранение неполадок

Невозможно запустить задачу CI с GitLab
Ошибки при импорте репозитория при настройке проекта dbt
Как исправить мой файл .gitignore?
Я вижу зацикленную ошибку «GitLab authentication out of date»
Можно ли подключать самостоятельно размещённые экземпляры GitLab только через планы dbt Enterprise?
Как мигрировать между git-провайдерами
Сообщение об обновлении токена GitLab

Нашли ошибку?

0
Loading