databricks-cli/cmd
Andrew Nester 27f51c760f
Added validate mutator to surface additional bundle warnings (#1352)
## Changes
All these validators will return warnings as part of `bundle validate`
run

Added 2 mutators: 
1. To check that if tasks use job_cluster_key it is actually defined
2. To check if there are any files to sync as part of deployment

Also added `bundle.Parallel` to run them in parallel

To make sure mutators under bundle.Parallel do not mutate config,
introduced new `ReadOnlyMutator`, `ReadOnlyBundle` and `ReadOnlyConfig`.

Example 

```
databricks bundle validate -p deco-staging
Warning: unknown field: new_cluster
  at resources.jobs.my_job
  in bundle.yml:24:7

Warning: job_cluster_key high_cpu_workload_job_cluster is not defined
  at resources.jobs.my_job.tasks[0].job_cluster_key
  in bundle.yml:35:28

Warning: There are no files to sync, please check your your .gitignore and sync.exclude configuration
  at sync.exclude
  in bundle.yml:18:5

Name: test
Target: default
Workspace:
  Host: https://acme.databricks.com
  User: andrew.nester@databricks.com
  Path: /Users/andrew.nester@databricks.com/.bundle/test/default

Found 3 warnings
```

## Tests
Added unit tests
2024-04-18 15:13:16 +00:00
..
account Bump github.com/databricks/databricks-sdk-go from 0.37.0 to 0.38.0 (#1361) 2024-04-16 12:03:21 +00:00
api Add usage string when command fails with incorrect arguments (#1276) 2024-03-12 14:12:34 +00:00
auth Add better documentation for the `auth login` command (#1366) 2024-04-18 11:55:42 +00:00
bundle Added validate mutator to surface additional bundle warnings (#1352) 2024-04-18 15:13:16 +00:00
configure Filter out system clusters for `--configure-cluster` (#1031) 2023-11-30 09:59:11 +00:00
fs Add usage string when command fails with incorrect arguments (#1276) 2024-03-12 14:12:34 +00:00
labs Make bundle loaders return diagnostics (#1319) 2024-03-28 10:32:34 +00:00
root Added `auth describe` command (#1244) 2024-04-03 08:14:04 +00:00
sync Added validate mutator to surface additional bundle warnings (#1352) 2024-04-18 15:13:16 +00:00
version Add usage string when command fails with incorrect arguments (#1276) 2024-03-12 14:12:34 +00:00
workspace Bump github.com/databricks/databricks-sdk-go from 0.37.0 to 0.38.0 (#1361) 2024-04-16 12:03:21 +00:00
cmd.go Add `databricks labs` command group (#914) 2023-11-17 12:47:37 +00:00