Documentation
Toggle Dark/Light/Auto modeToggle Dark/Light/Auto modeToggle Dark/Light/Auto modeBack to homepage

dbt Cloud

Summary

Configure your dbt Cloud environment by supplying the Sundeck Broker Hostname via the extended parameter host: in dbt Cloud.

These configuration instructions are for dbt Cloud. If you want to configure Sundeck for open-source downloadable version of dbt, please refer to these instructions.

Pre-requisites

You’ll need the following before configuring a dbt Cloud to use Sundeck:

  • dbt Cloud Account
  • dbt Cloud Project (i.e. dbt_project.yaml)
  • Authentication credentials for Snowflake, along with a default Warehouse and Role
  • A configured Broker in Sundeck

To make the process of connecting dbt Cloud through Sundeck as simple as possible, it is recommeded that you first verify that the dbt Cloud Project can be run against the desired Snowflake account directly. Once your Project and Environment are running successfully against the desired Snowflake account, follow the steps below to redirect dbt to your Sundeck Broker.

Step-by-Step Configuration

  • Obtain the Sundeck Broker Hostname

    • Log into the Sundeck Web UI

    • Navigate to the Broker > Config page (using the left-hand menu):

    • Copy the address of the Sundeck Broker. This can be done easily by using the “Copy to Clipboard” button next to the Sundeck Broker Hostname

  • Login to dbt Cloud, and using the top menu, navigate to the Deploy / Environments

    This will bring up a list of your configured dbt Environments. Choose the environment you wish to connect to Sundeck, and click on the Settings button

  • In the environment settings, scroll down to the Advanced section, and add a new extended parameter with the key host and paste the value of the Sundeck Broker hostname you copied in the first step. See example below:

    host: pxt47502.us-west-2.sundeck.io

  • Click the Save button to save the custom host configuration

Testing Your Connection

Test the connection by run a workload or query through the connection. You can check the Monitoring > Snowflake Query History and look at the SQL Text for the query you sent through Sundeck, you should see a QTag applied that looks something like this (see QTags for more information):

SELECT * 
  FROM native-app.reporting.enriched_query_history 
 WHERE warehouse = 'SNDK_WH_L' 
   AND database_name = 'SUNDECK';

-- {"app":"sundeck","flow_name":"ENABLE_MY_BROKER","hooks_applied":["Limit consumption by day.1","Improve Snowflake Usability.SupportBackticks.1","Change target warehouse based on workload tag","Text Fragment Aliases"],"kind":"main_query","lookup_routing_matched":true,"lookup_routing_matched_warehouse":"SNKD_WH_XS", "lookup_routing_num_computed_signatures":1,"query_rejected":false, "query_text_updated":false,"reject_message":null,"warehouse_updated":true, "workload":null}