Skip to Content
DocumentationEnabling dbt Features

Enabling dbt Features in Etleap

To enable dbt features that allow you to edit models, create schedules, and run preview CI builds, complete the following setup.

Etleap can connect to one dbt project repository that is hosted in GitHub.

Step 1. Install the Etleap GitHub App in your repo

Log in to Etleap and navigate to the Admin Console. Select dbt Settings and complete the GitHub app installation wizard.

dbt app setup
Authorize the Etleap GitHub app.
Warning

To install the Etleap GitHub App, the user initiating the installation in Etleap must have admin permissions on the target GitHub repository.

Step 2. Connect a Warehouse for CI

In order to run CI and draft builds, Etleap needs a default warehouse connection which it will create a temporary schema in to test the builds.

To setup CI and draft builds, select a warehouse connection on the dbt Settings screen.

dbt warehouse setup
Select a warehouse to run CI builds in.

Step 3. Give the Etleap User Permissions to Run dbt

The Etleap user for dbt connections needs permissions to select data, create schemas and tables, and read system views .

Linking Iceberg Pipelines to dbt Schedules

dbt Schedules in Snowflake can depend on Iceberg pipelines through Catalog Linked Databases. Etleap detects Snowflake source tables in a Catalog Linked Database and maps each one back to the pipeline that writes its underlying Iceberg table.

To let Etleap associate Iceberg pipelines with your dbt source tables, grant the Etleap user USAGE and MONITOR on the Catalog Linked Database, and USAGE on the Catalog Integration it was created from.

GRANT USAGE, MONITOR ON DATABASE <catalog_linked_database_name> TO ROLE <role_name>; GRANT USAGE ON INTEGRATION <catalog_integration_name> TO ROLE <role_name>;

The Catalog Integration name can be found with the following query:

SELECT SYSTEM$GET_CATALOG_LINKED_DATABASE_CONFIG('<catalog_linked_database_name>');

Step 4. Create your dbt Project

To use dbt features, your main branch must contain a valid dbt project. A valid dbt project is one in which dbt parse runs successfully.

At a minimum, the project must:

  • Include a dbt_project.yml  file in the project’s root with required configuration defined
  • Include a models folder, for either the default /models path or the first path defined in the [model-paths] field of your dbt_project.yml
  • Ensure all ref() and source() Jinja calls point to existing models or sources
  • Include any macros referenced in models in the project or imported packages

Uninstalling the Etleap GitHub App

To uninstall the Etleap application from your GitHub repository and organization, first disconnect it from the dbt Settings tab in the Admin console.

After disconnecting, Etleap will no longer have access to your repository.

Note

The Etleap GitHub App will still appear as installed in GitHub. To fully remove it, go to Settings > Integrations > GitHub Apps and follow the uninstall instructions.