Niyojit
Databricks Partner

Hi @QuanDo1 

You don't need to use if/else for this use case. Databricks Asset Bundles (DAB) already supports variables that can be overridden per target environment.

You can define your variables once and then assign different values for each target (dev, qa, prod). This keeps your bundle clean and avoids conditional logic in the YAML.

bundle:
  name: dynamic-scheduler-demo

variables:
  job_cron_schedule:
    description: "The cron expression for running the workflow"
    default: "0 0 12 * * ?"

  job_timezone:
    description: "The timezone for the schedule"
    default: "UTC"

targets:
  dev:
    mode: development
    default: true
    variables:
      job_cron_schedule: "0 0/15 * * * ?"  # Every 15 minutes

resources:
  jobs:
    my_scheduled_job:
      name: "My Scheduled Data Pipeline"
      schedule:
        quartz_cron_expression: "${var.job_cron_schedule}"
        timezone_id: "${var.job_timezone}"
        pause_status: "UNPAUSED"
Niyojit