Skip to main content
Continuous Deployment (CD) runs a Bolt schedule as soon as changes are merged, so your production environment always reflects the latest approved changes. The schedule can run any commands (dbt™, Python scripts, or app triggers), not only dbt models. On GitHub and GitLab, Paradime receives the merge event and runs your on-merge schedules itself, with no pipeline or API key. On Azure DevOps and Bitbucket, a pipeline starts the schedule through the Bolt API.

Deployment options

GitHub

Deploy on merge through the Paradime GitHub App. No pipeline.

GitLab

Deploy on merge through the GitLab connection on gitlab.com or Self-Managed. No pipeline.

Azure Pipelines

Trigger a Bolt schedule from an Azure Pipeline on merge.

BitBucket Pipelines

Trigger a Bolt schedule from a BitBucket pipeline on merge.

Set up the CD Bolt schedule

For pipeline-based CD (Azure DevOps, BitBucket, or a GitLab pipeline), first create the Bolt schedule your pipeline will trigger. Native CD on GitHub and GitLab uses an On Merge schedule instead, with no pipeline. See GitHub and GitLab.
Requires a production environment configured in Paradime. See the Scheduler Environment setup guide for your data warehouse.
  1. In the Bolt UI, create a new schedule or edit an existing one.
  2. Turn on Defer to a previous run so the job builds only what changed, comparing against a previous run’s state.
  3. Give the schedule a descriptive name.
  4. Choose the schedule to defer to (the same schedule or another).
  5. Set the comparison method (Last run or Last successful run).
  6. Enter the dbt™ commands to run, for example:
  7. Choose the Git branch to deploy from (for example, main).
  8. Set the trigger to On Merge, so the schedule deploys when changes are merged.
  9. Deploy the schedule, and note its slug for the pipeline.
Start from the Deploy Code Changes on Merge template.

Run schedules in order

On GitHub and GitLab, you can chain several on-merge schedules so they run one after another instead of all at once, and stop at the first failure.

Run Bolt schedules in order (chains)