Quickstart
This page copies Fivetran-landed source tables into Databricks. It takes about five minutes.
-
Scaffold the project.
Terminal window rocky init my-pipelinecd my-pipelineThis writes a DuckDB starter project. Step 2 replaces its
rocky.toml. -
Configure a source, a target, and the pipeline that wires them together.
[adapter.fivetran]type = "fivetran"kind = "discovery"destination_id = "${FIVETRAN_DESTINATION_ID}"api_key = "${FIVETRAN_API_KEY}"api_secret = "${FIVETRAN_API_SECRET}"[adapter.prod]type = "databricks"host = "${DATABRICKS_HOST}"http_path = "${DATABRICKS_HTTP_PATH}"token = "${DATABRICKS_TOKEN}"[pipeline.bronze]type = "replication"strategy = "incremental"timestamp_column = "_fivetran_synced"[pipeline.bronze.source]adapter = "prod"[pipeline.bronze.source.discovery]adapter = "fivetran"[pipeline.bronze.source.schema_pattern]prefix = "src__"separator = "__"components = ["source"][pipeline.bronze.target]adapter = "prod"catalog_template = "warehouse"schema_template = "stage__{source}"[pipeline.bronze.target.governance]auto_create_catalogs = trueauto_create_schemas = true[pipeline.bronze.checks]enabled = truerow_count = truecolumn_match = truefreshness = { threshold_seconds = 86400 }[state]backend = "local"Export the environment variables this config references (
DATABRICKS_HOST,FIVETRAN_API_KEY, and the rest) before you run Rocky. Other warehouses: Connect to a warehouse. -
Validate the config.
Terminal window rocky validateChecks config syntax and adapter wiring. It does not call external APIs.
-
Discover the sources.
Terminal window rocky -o table discoverCalls the Fivetran API and lists connectors matching the schema pattern.
-
Build a plan.
Terminal window plan_id=$(rocky plan --filter source=orders --output json | jq -r .plan_id)--filter source=ordersselects thesrc__ordersschema. Rocky compiles the pipeline, detects drift, and writes a plan to.rocky/plans/<plan_id>.json. A plan is the exact work Rocky will do, written down first. Read it before you apply it. See the glossary. -
Apply the plan.
Terminal window rocky apply "$plan_id"Rocky runs the plan in order: create catalogs and schemas, apply drift, copy data, run checks. It prints a JSON result. Checks run after the copy, so a failed check cannot undo it.
The one-command path
Section titled “The one-command path”rocky run --filter source=orders plans and applies in one step. Use it for local iteration and automation. Add --resume-latest to resume from the last checkpoint after a failure.
Next steps
Section titled “Next steps”- Browser UI: open the project with
rocky serve --ui. - VS Code extension: compile errors and types as you type.
- Bronze layer: how replication and schema patterns work.
- Silver layer: add transformation models on top.
- Dagster integration: run Rocky as Dagster assets.