UI-Based schedules provide a user-friendly interface for creating your dbt™️ schedules.
To create a UI-Based schedule, go to Bolt on the home screen and click + New Schedule, and configure the various fields.
For more standard Bolt executions, use our template library to get started.
Tutorial
YAML-Based Schedules
YAML-Based schedules offer a more programmatic approach to schedule management.
To create a YAML-Based schedule:
If it doesn't already exist, create a file named paradime_schedules.yml in your dbt™️ project root directory (typically where your dbt_project.yml is located).
Cron syntax for job timing (use 'OFF' for manual triggers only)
For assistance with cron syntax, see crontab.guru.
schedule: @weekly
commands
dbt™ commands to execute (can be multiple)
commands: - dbt run - dbt test
slack_on
When to send Slack notifications based on the status of the completed run.
Requires Slack App configuration
slack_on: - passed - failed
slack_notify
Slack channels/users to notify.
Requires Slack App configuration and slack_on configuration
slack_notify: - '#data-alerts' - '@john'
email_on
When to send email notifications based on the status of the completed run.
email_on: - passed - failed
email_notify
This is to configure who you want to be notified when a run is completed.
email_on: - failed
environment
Execution environment (production only)
production
Example paradime_schedules.yml configuration
The below parameters can be used to configure each individual schedule in Paradime.
paradime_schedules.yml
schedules: - name:operations_run#the name of your scheduleschedule:"*/10 * * * *"#the schedule cron configuration or use "OFF" if you want to disable the scheduleenvironment:production#the environment used to run the schedule -> this is always productioncommands:#the set of dbt commands you want to run in the schedule - dbt seed - dbt run - dbt testowner_email:"john@acme.io"#the owner email slack_on: #the configuration of when a notification is triggered. Here we want to send a notification when the run is completed either successfully or when failing
- passed - failedslack_notify:#the channel/user that will be notified - '#data-alerts' - '@john'email_notify:#the email addresses that will be notified - 'john@acme.com' - 'data_team@acme.com' email_on: #the configuration of when a notification is triggered. Here we want to send a notification when the run is completed either successfully or when failing
- passed - failed
Paradime schedules terminal commands
Before running any of the following commands, navigate to your dbt™️ project directory where paradime_schedules.yml is located.
Validate File Format
paradimescheduleverify
This command checks the paradime_schedules.yml for formatting errors and outputs the result.
Run Schedule Locally
To run all defined schedules based on your local context: (ie. based on your development environment and your current branch).
paradimeschedulerun
To run a specific schedule locally:
paradimeschedulerun<schedule_name>
Dry run
To simulate all schedule executions without running dbt™️ models:
paradimeschedulerun--dry-run
To simulate a specific schedule dry run:
paradimeschedulerun--dry-run<schedule_name>
These commands help ensure your schedules are correctly configured before they run in production.