Is this your first time submitting a feature request?
Describe the feature
Feature
Per discussion with @jtcohen6, we want to:
Configuration
Users will need to:
- have a SSH key configured on their dev machines and CI + production environments for the relevant Git provider, and
- include the
provider key in their package configuration:
packages:
- private: your-org/your-internal-repo
provider: "github" # Supported values: "github", "gitlab", "azure_devops"
Implementation
dbt will use the provider value to construct the correct SSH URL for dbt deps to use when cloning the repository:
| Provider |
SSH URL format |
github |
git@github.com:org/repo}.git |
gitlab |
git@gitlab.com:org/repo.git |
azure_devops |
git@ssh.dev.azure.com:v3/org/repo |
Describe alternatives you've considered
No response
Who will this benefit?
Native private packages lets users install packages from private Git repos using the private key without having to:
- configure a token, or
- divine a full SSH-compatible Git URL
The net effect is the same as the git method + SSH URL method, but the key differences are:
private only requires the org/repo-name + provider key, and
private will work across dbt platform, Fusion, and Core (whereas the dbt platform does not support the SSH key method)
Are you interested in contributing this feature?
you bet
Anything else?
internal slack thread
Is this your first time submitting a feature request?
Describe the feature
Feature
Per discussion with @jtcohen6, we want to:
privategit repositories (à la native private packages)dependencies.ymlandpackages.ymlConfiguration
Users will need to:
providerkey in their package configuration:Implementation
dbt will use the
providervalue to construct the correct SSH URL fordbt depsto use when cloning the repository:githubgit@github.com:org/repo}.gitgitlabgit@gitlab.com:org/repo.gitazure_devopsgit@ssh.dev.azure.com:v3/org/repoDescribe alternatives you've considered
No response
Who will this benefit?
Native private packages lets users install packages from private Git repos using the
privatekey without having to:The net effect is the same as the
gitmethod + SSH URL method, but the key differences are:privateonly requires theorg/repo-name+providerkey, andprivatewill work across dbt platform, Fusion, and Core (whereas the dbt platform does not support the SSH key method)Are you interested in contributing this feature?
you bet
Anything else?
internal slack thread