databricks-cli/bundle
Lennart Kats (databricks) a5b86093ec
Add a foundation for built-in templates (#685)
## Changes

This pull request extends the templating support in preparation of a
new, default template (WIP, https://github.com/databricks/cli/pull/686):
* builtin templates that can be initialized using e.g. `databricks
bundle init default-python`
* builtin templates are embedded into the executable using go's `embed`
functionality, making sure they're co-versioned with the CLI
* new helpers to get the workspace name, current user name, etc. help
craft a complete template
* (not enabled yet) when the user types `databricks bundle init` they
can interactively select the `default-python` template

And makes two tangentially related changes:
* IsServicePrincipal now uses the "users" API rather than the
"principals" API, since the latter is too slow for our purposes.
* mode: prod no longer requires the 'target.prod.git' setting. It's hard
to set that from a template. (Pieter is planning an overhaul of warnings
support; this would be one of the first warnings we show.)

The actual `default-python` template is maintained in a separate PR:
https://github.com/databricks/cli/pull/686

## Tests
Unit tests, manual testing
2023-08-25 09:03:42 +00:00
..
artifacts Do not try auto detect Python package if no Python wheel tasks defined (#674) 2023-08-17 09:11:39 +00:00
config Add a foundation for built-in templates (#685) 2023-08-25 09:03:42 +00:00
deploy Added support for sync.include and sync.exclude sections (#671) 2023-08-18 08:07:25 +00:00
deployer Fix locker unlock for destroy (#492) 2023-06-19 15:57:25 +02:00
internal/tf Upgraded Go version to 1.21 (#664) 2023-08-15 13:50:40 +00:00
libraries Do not try auto detect Python package if no Python wheel tasks defined (#674) 2023-08-17 09:11:39 +00:00
phases Added run_as section for bundle configuration (#692) 2023-08-23 16:47:07 +00:00
run Add development runs (#522) 2023-07-12 08:51:54 +02:00
schema Renamed `environments` to `targets` in bundle configuration (#670) 2023-08-17 15:22:32 +00:00
tests Added run_as section for bundle configuration (#692) 2023-08-23 16:47:07 +00:00
bundle.go Added support for sync.include and sync.exclude sections (#671) 2023-08-18 08:07:25 +00:00
bundle_test.go Renamed `environments` to `targets` in bundle configuration (#670) 2023-08-17 15:22:32 +00:00
context.go Make sync command work in bundle context; reorder args (#207) 2023-02-20 11:33:30 +01:00
context_test.go Add command that writes the materialized bundle configuration to stdout (#95) 2022-11-21 15:39:53 +01:00
deferred.go Added support for bundle.Seq, simplified Mutator.Apply interface (#403) 2023-05-24 14:45:19 +02:00
deferred_test.go Added support for bundle.Seq, simplified Mutator.Apply interface (#403) 2023-05-24 14:45:19 +02:00
mutator.go Added support for bundle.Seq, simplified Mutator.Apply interface (#403) 2023-05-24 14:45:19 +02:00
mutator_test.go Added support for bundle.Seq, simplified Mutator.Apply interface (#403) 2023-05-24 14:45:19 +02:00
root.go First look for databricks.yml before falling back to bundle.yml (#580) 2023-07-18 12:16:34 +02:00
root_test.go Log the bundle root configuration file if applicable (#657) 2023-08-11 12:28:05 +00:00
seq.go Added support for bundle.Seq, simplified Mutator.Apply interface (#403) 2023-05-24 14:45:19 +02:00
seq_test.go Added support for bundle.Seq, simplified Mutator.Apply interface (#403) 2023-05-24 14:45:19 +02:00