1. A team stores their Databricks jobs and notebook code in GitHub. They want a CI/CD pipeline that automatically deploys updated job definitions to a staging workspace whenever a pull request is merged to the `main` branch. Which combination of tools represents the recommended Databricks-native approach for this pattern?
- A. GitHub Actions workflow calling `databricks bundle deploy` targeting the staging deployment target defined in `bundle.yml`✓ Correct
- B. GitHub Actions workflow that uses the Databricks REST API directly to POST a new job definition JSON payload
- C. Azure DevOps pipeline that runs `databricks workspace import` to upload notebooks and then `databricks jobs create`
- D. GitHub Actions workflow that uses `dbfs cp` to copy wheel files and then triggers a job run via `databricks runs submit`
Explanation
Databricks Asset Bundles (DABs) are the recommended native approach for CI/CD. `bundle.yml` defines resources (jobs, pipelines, clusters) with environment-specific deployment targets (dev/staging/prod), and `databricks bundle deploy` idempotently deploys all defined resources to the target environment. Calling the REST API directly is error-prone, not idempotent, and bypasses the structured resource lifecycle management DABs provides. `databricks workspace import` and `databricks jobs create` is an older pattern that does not benefit from DAB's dependency resolution, variable substitution, or target management. Copying wheel files via `dbfs cp` and submitting runs addresses packaging but not job definition management or environment promotion.