Skip to main content
Run dbt commands as part of an orchestration pipeline. When using dbt environment variables in this component, the variables must have the prefix DBT_. For extracting data from dbt Cloud, use the dbt Cloud Flex connector instead.
  • Snowflake credentials, including key-pair authentication, are securely passed from the environment to dbt in the background. For more information about how to use key-pair authentication, read Using Snowflake key-pair authentication.
  • This component supports the use of pipeline and project variables. For more information, read Variables.
  • This component programmatically generates the profiles.yml file and doesn’t provide a parameter to specify an external or custom profiles.yml.

Video example


Properties

Name
string
required
A human-readable name for the component.
dbt Core Version
drop-down
required
Select the dbt Core version to use. This drop-down shows the current version of dbt Core which is available to your agent. A warning will be displayed in the pipeline run details if this doesn’t match the agent’s dbt Core version. In the future, Full SaaS agents will support multiple versions of dbt Core and will decline to execute the component instead if the selected version isn’t supported.
dbt Project Location
drop-down
required
Choose how to access your dbt project.If your Git repository uses Multi-Factor Authentication (MFA), ensure you are using a project that is associated with your Git repository and then select Current Project from the options below.
  • External Repository: Select this option if your dbt project is located in an external Git repository that is not connected to your current project. This is the default setting. This setting uses username and password authentication.
  • Current project: The dbt Core component will look for a dbt project in the associated project repository. This will make available the dbt Project property. Select this option if your dbt project is either:
    • Already located in the Git repository that you have connected to your project.
    • Available to import into the current project by clicking AddImport.
A directory is only considered a dbt project if the directory includes a dbt_project.yml file. Read more about dbt_project.yml.
dbt Project
drop-down
required
Select the dbt Project to use. The drop-down will list the top-level name of any directories that are classed as dbt projects (defined by including a dbt_project.yml file).
dbt Command
string
required
A dbt command to execute. A single instance of the component runs a single dbt command.To learn more about dbt commands, read dbt Command reference.The dbt run command runs dbt models stored in the Git repository you have synced with. The run command will run all models stored in your repository unless you specify a particular model.Specify a model by running dbt run --{name_of_dbt_model}.
Git URL
string
required
URL to the external Git repository to sync to.
Git Branch
string
required
The Git branch to sync with.
Git Folder Path
string
Path to the folder in your repository that contains the dbt project. Leave empty if the dbt project is at the top of the repository.
Git Username
string
required
Your username for the service that hosts your repository, such as GitHub, Azure DevOps, GitLab, or Bitbucket. If your username and your email address are not the same value, you must use your username.
Git Password
drop-down
required
Choose the secret definition that represents your credentials for this connector.If you have not already saved your credentials for this connector as a secret definition, click Add secret to create a secret definition representing these credentials. Read Secrets and secret definitions for details about creating a secret definition.To create a new secret:
  1. Click Manage to open the Secret definitions tab of your project in a new browser tab.
  2. Click Add secret definition.
  3. Configure your secret definition using the table as reference if required.
    PropertyDescription
    Secret definition nameA name for the secret definition. Any whitespace added to the start or end of the secret definition name is automatically trimmed.
    DescriptionAn optional, referential description for the project. Max 256 characters.
    AgentSelect the agent that will be used by the pipelines that use this secret. This is only required if you have a Hybrid SaaS solution. To learn how to create an agent, read Create an agent.
    Secret NameFor a Hybrid SaaS solution only, select a named entry created in AWS Secrets Manager.
    Secret KeyFor a Hybrid SaaS solution only, select a named secret key tied to your secret name.
    Use multi-line text input?For a Matillion Full SaaS solution only, toggle “Yes” to enable multi-line text input for secret values that require multi-line input. For example, certificates and SSH keys.
    Secret valueFor a Matillion Full SaaS solution only, give a secret value in the field provided.
  4. Click Create Secret.
  5. Return to the Git Password drop-down and select your new secret definition from the drop-down list.
Map dbt Environment Variables
column editor
Specify any dbt environment variables and their values.
Environment variables passed to this component must have the prefix DBT_.
Global Configuration in profiles.yml
column editor
Append configuration parameters to the profiles.yml file.
  • Key: The parameter name.
  • Value: The parameter value.
  • Data Type: String, number, or Boolean.
Read dbt’s About profiles.yml to learn more.
Profile Configuration in profiles.yml
column editor
Assign additional output parameters or override existing parameters of the profiles.yml file. generates the profile.yml file based on the environment you have configured in —for instance, if your environment is set up for Snowflake, the Snowflake connection is included in the profile.yml file.
  • Key: The parameter name.
  • Value: The parameter value.
  • Data Type: String, number, or Boolean.
Cloud data warehouse parameter documentation is available below: