Подключение к GitHub
Подключение учетной записи GitHub к dbt упрощает работу с dbt и обеспечивает дополнительный уровень безопасности:
- Импортируйте новые репозитории GitHub за несколько нажатий при настройке проекта dbt.
- Клонируйте репозитории по HTTPS вместо SSH.
- Запускайте сборки непрерывной интеграции (CI) при открытии пул-реквестов в GitHub.
ghe.com)Если ваша организация использует GitHub Enterprise Cloud, размещенный в домене ghe.com, общее приложение GitHub для dbt не сможет получить к нему доступ. Обратите внимание: учетные записи ghe.com управляются в облаке (а не в локальной инфраструктуре), но это ограничение все равно действует.
Учетные записи Enterprise и Enterprise+ могут подключиться, зарегистрировав собственное приложение GitHub. На других тарифных планах используйте импорт проекта по URL Git с SSH-ключами или ключами развертывания. Настройка SSH URL вашей организации может потребовать дополнительных действий, а некоторые возможности встроенной интеграции недоступны при подключении по URL Git.
За дополнительной помощью с вашей конфигурацией обратитесь в службу поддержки dbt или к команде dbt, сопровождающей вашу учетную запись.
Предварительные требования
- Права доступа GitHub: Для установки приложения необходимо быть владельцем организации GitHub. Подробнее о ролях в организации GitHub.
- Права доступа dbt: Владельцу вашей организации GitHub также требуются права Owner или Account Admin в dbt platform. При необходимости создайте для установки временную учетную запись с этими правами.
- GitHub в локальной инфраструктуре или с размещением в ЕС: На тарифных планах Enterprise и Enterprise+ можно использовать встроенную интеграцию, зарегистрировав собственное приложение GitHub. На других тарифных планах подключайтесь по URL Git: этот способ поддерживает меньше возможностей Git.
При указании репозитория GitHub в dbt platform через пользовательский интерфейс, API или провайдер Terraform имя репозитория должно в точности соответствовать регистру в URL GitHub, чтобы избежать ошибок клонирования или сбоев заданий. Например, если URL вашего репозитория — github.com/my-org/MyRepo, введите имя MyRepo, а не myrepo.
Выбор приложения GitHub
dbt подключается к GitHub через приложение GitHub App. Есть два варианта:
- Общее приложение dbt (по умолчанию), доступное любой организации, подключающейся к
github.com. - Ваше собственное приложение GitHub, доступное в рамках закрытого бета-тестирования для учетных записей Enterprise и Enterprise+ в средах MT или ST, использующих GitHub Enterprise Server или GitHub с хранением данных в ЕС. Чтобы присоединиться к бета-тестированию, обратитесь к менеджеру вашей учетной записи. Закрытая бета-версия
Для одной учетной записи dbt можно использовать одно приложение GitHub, а не отдельное приложение для каждого проекта.
Установка dbt в учетной записи GitHub
Вы можете подключить учетную запись dbt к GitHub, установив приложение dbt в своей организации GitHub и предоставив доступ к нужным репозиториям:
- В dbt нажмите на имя своей учетной записи в левом меню и выберите Account settings.
- Выберите Personal profile в разделе Your profile.
- Прокрутите страницу вниз до Linked accounts.
-
В разделе Linked accounts настройте подключение своей учетной записи GitHub к dbt, нажав Link справа от GitHub. Вы будете перенаправлены в свою учетную запись GitHub, где вам предложат установить и настроить приложение dbt.
-
Выберите организацию GitHub и репозитории, к которым dbt должен иметь доступ.
-
Предоставьте приложению GitHub App для dbt следующие права:
- Чтение метаданных (Metadata)
- Чтение и запись проверок (Checks)
- Чтение и запись статусов коммитов (Commit statuses)
- Чтение и запись содержимого (Contents / Code)
- Чтение и запись пул-реквестов (Pull requests)
- Чтение и запись вебхуков (Webhooks)
- Чтение и запись рабочих процессов (Workflows)
-
После предоставления доступа приложению вы будете перенаправлены обратно в dbt и увидите подтверждение успешной привязки учетной записи. Теперь вы прошли персональную аутентификацию.
-
Попросите участников команды пройти аутентификацию по отдельности, подключив свои личные профили GitHub.
Ограничение доступа к репозиториям в GitHub
Если вы владелец организации GitHub, вы также можете настроить приложение GitHub для dbt так, чтобы оно имело доступ только к выбранным репозиториям. Эта настройка выполняется в GitHub, но в dbt есть удобная ссылка для перехода к ней.
Собственное приложение GitHub EnterpriseEnterprise +Закрытая бета-версия
Настройка собственного приложения GitHub доступна в рамках закрытого бета-тестирования. Чтобы присоединиться, обратитесь к менеджеру вашей учетной записи.
Общее приложение GitHub App для dbt размещается отдельно в каждом регионе, поэтому оно может обращаться только к репозиториям на github.com. Если ваша организация использует GitHub Enterprise Server или GitHub с хранением данных в ЕС, зарегистрируйте собственное приложение GitHub и настройте dbt на его использование.
Администратор учетной записи (или администратор безопасности) может выполнить эту настройку один раз:
- Зарегистрируйте приложение GitHub в своей организации GitHub
- Добавьте свое приложение GitHub в dbt
Затем каждому разработчику в учетной записи необходимо повторно привязать свой профиль GitHub.
Регистрация приложения GitHub
Платформа dbt не поддерживает одновременную интеграцию с публичными и приватными репозиториями GitHub. Для регистрации приложения GitHub App необходим приватный репозиторий. Отключите настроенный публичный репозиторий, прежде чем выполнять действия из этого раздела.
Рекомендуем создавать приложение в организации GitHub, а не в личной учетной записи, чтобы подключение не прервалось при уходе сотрудника. Полное описание действий на стороне GitHub приведено в руководстве GitHub по регистрации приложения GitHub App.
-
В dbt перейдите в Account settings > Integrations > Git и разверните раздел GitHub. Нажмите Copy рядом с Redirect URL — этот адрес понадобится на следующем шаге.
-
В своей организации GitHub перейдите в Settings > Developer settings > GitHub Apps и выберите New GitHub App.
-
Введите следующие данные:
Поле Значение GitHub App name Узнаваемое имя, например dbt platformHomepage URL URL доступа к вашему dbt Redirect URL Значение Redirect URL, скопированное из dbt Webhook Оставьте флажок Active установленным и введите любой URL-заполнитель (например, https://example.com) в поле Webhook URL. dbt его не использует, но GitHub требует его указать -
Предоставьте приложению следующие права доступа к репозиториям:
- Чтение метаданных (Metadata)
- Чтение и запись проверок (Checks)
- Чтение и запись статусов коммитов (Commit statuses)
- Чтение и запись содержимого (Contents / Code)
- Чтение и запись пул-реквестов (Pull requests)
- Чтение и запись вебхуков (Webhooks)
- Чтение и запись рабочих процессов (Workflows)
-
Выберите Create GitHub App. GitHub создаст App ID и Client ID.
-
Сгенерируйте Client secret и сохраните его в безопасном месте, поскольку GitHub показывает его только один раз.
-
В разделе Private keys выберите Generate a private key. GitHub скачает файл
.pem. Затем вам нужно будет вставить его содержимое в dbt. -
Установите приложение в своей организации и сохраните его URL установки. См. документацию GitHub о предоставлении доступа к приложению по ссылке установки.
Если вы используете тарифный план Business Critical с ограничениями по IP-адресам, убедитесь, что диапазоны CIDR вашего экземпляра GitHub разрешены, иначе подключение не будет работать.
Добавление своего приложения GitHub в dbt
Если ваша учетная запись уже использует общее приложение GitHub App для dbt, переключение на собственное приложение сделает недействительными все существующие привязки профилей GitHub. Каждому пользователю учетной записи потребуется повторно привязать свой профиль GitHub, прежде чем он сможет продолжить разработку или запускать CI. Согласуйте переход с командой.
-
В dbt вернитесь в Account settings > Integrations > Git и разверните раздел GitHub.
-
Введите следующие данные:
Поле Значение GitHub base URL Имя хоста вашего GitHub. Используйте https://github.comдля GitHub.com или собственное имя хоста для GitHub Enterprise Server, напримерhttps://github.yourgreatcompany.comApp ID Значение App ID вашего приложения GitHub Client ID Значение Client ID вашего приложения GitHub Client secret Сгенерированный вами секрет клиента Private key Полное содержимое скачанного файла .pem, включая строкиBEGINиENDInstall URL Необязательно. Ссылка для установки вашего приложения -
Выберите Save. dbt проверит учетные данные в GitHub. Если что-то не так, dbt покажет ошибку и не сохранит конфигурацию.
Теперь dbt выполняет всю авторизацию GitHub для этой учетной записи через ваше приложение.
Повторная привязка профиля GitHub
Каждый разработчик проходит аутентификацию через приложение GitHub учетной записи, поэтому доступ к репозиториям соответствует правам, фактически предоставленным ему администратором GitHub. После того как администратор добавит или изменит приложение, повторно привяжите свой профиль:
- В dbt нажмите на имя своей учетной записи в левом меню и выберите Account settings.
- Выберите Personal profile в разделе Your profile.
- Прокрутите страницу до Linked accounts и нажмите Unlink рядом с GitHub, если старое подключение все еще отображается.
- Нажмите Link и авторизуйте приложение GitHub вашей организации.
Подробные инструкции приведены в разделе Аутентификация личной учетной записи GitHub.
Удаление интеграции с GitHub
Администраторы учетной записи и администраторы безопасности могут удалить интеграцию с GitHub в разделе Account settings > Integrations > Git.
Удаление интеграции нарушает доступ к репозиториям и работу CI для всей учетной записи, пока вы не настроите новую интеграцию. Заранее подготовить замену нельзя, поскольку учетная запись поддерживает только одну интеграцию с GitHub одновременно.
Ограничения
Обратите внимание на следующие ограничения:
- Одно приложение GitHub на учетную запись dbt. Нельзя задать отдельное приложение для каждого проекта.
- Нельзя настроить несколько интеграций с GitHub в одной учетной записи.
- Только администраторы учетной записи и администраторы безопасности могут создавать, обновлять или удалять интеграцию с GitHub.
Аутентификация личной учетной записи GitHub
После того как администратор dbt настроит подключение к учетной записи GitHub вашей организации, вам необходимо пройти аутентификацию с помощью личной учетной записи. Вы должны подключить свой личный профиль GitHub к dbt, чтобы использовать Studio IDE и CLI и подтвердить свои права на чтение и запись в репозиторий.
-
Каждый разработчик dbt на тарифном плане Enterprise или Enterprise+ должен подключить свой профиль GitHub к dbt. Это необходимо, поскольку Studio IDE проверяет права каждого разработчика на чтение и запись в репозиторий dbt.
-
Разработчикам dbt на тарифном плане Starter не обязательно подключать свои профили GitHub, однако это все же рекомендуется.
Если ваша учетная запись использует собственное приложение GitHub, вы авторизуете это приложение вместо общего приложения dbt, а ваш доступ к репозиториям соответствует настройкам установленного приложения GitHub App.
Чтобы подключить личную учетную запись GitHub:
-
В dbt нажмите на имя своей учетной записи в левом меню и выберите Account settings.
-
Выберите Personal profile в разделе Your profile.
-
Прокрутите страницу вниз до Linked accounts. Если ваша учетная запись GitHub не подключена, вы увидите сообщение «No connected account».
-
Нажмите Link, чтобы начать настройку. Вы будете перенаправлены в GitHub, где на экране предоставления разрешений вам предложат авторизовать dbt.
- После подтверждения авторизации вы будете перенаправлены в dbt, где теперь должна отображаться подключенная учетная запись.
Теперь вы можете использовать Studio IDE или CLI dbt.







