Skip to main content
A Bolt schedule runs more than dbt™. In this guide you’ll add a non-dbt command to a schedule so ingestion, custom scripts, and transformations all run in the right order from one place.
PrerequisitesEstimated time: 10 minutes.

Steps

1

Understand what a command is

A schedule is an ordered list of commands. Each command runs a step of your pipeline, and Bolt runs them top to bottom. Beyond dbt™ commands, you can add ingestion syncs (Airbyte, Fivetran, and more) and custom Python scripts to the same schedule.Order the commands to match your pipeline: sync source data first, then transform it with dbt™, then run any downstream checks or scripts.
2

Add a non-dbt command

Open the schedule and add a command. Pick the command type for the task you want to run, for example Sync Airbyte Connection, Sync Fivetran Connector, or Run Python Script.
3

Configure an ingestion sync (example)

For a Sync Fivetran Connector command, enter one or more Connector IDs (for example, unsold_decoration). Use Add connector to sync several in parallel; the schedule continues to the next command only once all syncs finish. Then click Add command.For a Sync Airbyte Connection command, enter one or more Connection IDs (for example, conn_123), choose the Job type (Sync to run the connection, or Reset to clear its data and re-sync), then click Add command.
Set the connector or connection to Manual scheduling in Fivetran or Airbyte, so syncs run only when Paradime triggers them.
4

Or run a Python script (example)

For a Run Python Script command, enter one or more commands, one per line. If you manage dependencies with Poetry, keep pyproject.toml and poetry.lock at the root of your dbt™ project and make poetry install the first command:
Without Poetry, run the script directly:
Store secrets (API keys, credentials) as Bolt schedule environment variables and read them with os.environ rather than hardcoding them.
5

Order commands and add your dbt™ run

Arrange the commands so each step has what it needs: run the ingestion sync first, then your dbt™ commands to transform the fresh data, then any downstream Python checks. Save the schedule.
Trigger the schedule and open its run. You’ll know it worked when every command shows as completed in order, with the ingestion sync finishing before the dbt™ run starts. If a sync hangs, confirm the source is set to Manual scheduling and that its credentials are set as Bolt environment variables.

Next steps

Trigger runs the right way

Choose schedule types and triggers, including running a pipeline on another schedule’s completion.

Set up Turbo CI

Run and test only changed models on every pull request.

Fivetran command reference

Every field for the Sync Fivetran Connector command.

Python script reference

Poetry setup, environment variables, and usage for Run Python Script.