Shreyas Goenka
ce7b2133bf
Added comments for the schema struct fields
2023-01-17 13:59:56 +01:00
Shreyas Goenka
d2f466afc5
replaced properties and items with schema
2023-01-17 13:47:31 +01:00
Shreyas Goenka
cc350f761a
correct typo and some comments
2023-01-17 13:43:50 +01:00
Shreyas Goenka
e79c52ff37
Added doc string for type mapping
2023-01-17 12:25:25 +01:00
Shreyas Goenka
aa81d83970
added ignoring - fields and tests for ignoring dashed and non annotated fields
2023-01-17 11:58:32 +01:00
Shreyas Goenka
2a66a2fc74
added comment for what to do about cycles in json schema
2023-01-17 11:26:46 +01:00
Shreyas Goenka
7385f37df6
fixed typo
2023-01-16 21:53:20 +01:00
Shreyas Goenka
2945408f0d
add test for errWithTrace
2023-01-16 13:19:31 +01:00
Shreyas Goenka
42d82ede6e
-
2023-01-16 02:30:41 +01:00
Shreyas Goenka
4438d1b37c
some todo and comment cleanup
2023-01-16 02:27:49 +01:00
Shreyas Goenka
ae201f1bd3
comments and typo correction
2023-01-16 02:23:35 +01:00
Shreyas Goenka
276ba00067
fixed debugTrace
2023-01-13 20:03:24 +01:00
Shreyas Goenka
1ee35c3633
corrected enum
2023-01-13 19:40:09 +01:00
Shreyas Goenka
d605ab1aa4
using list for error tracing
2023-01-13 19:37:35 +01:00
Shreyas Goenka
1538422d27
some cleanup
2023-01-13 19:26:50 +01:00
Shreyas Goenka
0f67d7c0d7
added test for embedded structs
2023-01-13 19:25:42 +01:00
Shreyas Goenka
b1e85e20f6
cleaned up test boilerplate, added support for maps and embedded types
2023-01-13 19:08:21 +01:00
Shreyas Goenka
010f60d498
added slice of object handling
2023-01-13 18:01:53 +01:00
Shreyas Goenka
babd7fa4eb
corrected item typo
2023-01-13 17:28:46 +01:00
Shreyas Goenka
cc5ed2bc76
fixed typo, and tested schema is working
2023-01-13 17:13:21 +01:00
Shreyas Goenka
926db54a6d
added tests for primitives and basic objects/arrays
2023-01-13 16:45:01 +01:00
Shreyas Goenka
987dd29357
added recursive limit
2023-01-13 12:09:19 +01:00
Shreyas Goenka
d46dbbce6a
WIP json schema support for bundles
2023-01-13 04:52:25 +01:00
Pieter Noordhuis
3582037be6
Add nil check for retries.Info.Info ( #166 )
2023-01-12 18:58:36 +01:00
Pieter Noordhuis
8f4461904b
Define flags for running jobs and pipelines ( #146 )
2022-12-23 15:17:16 +01:00
Pieter Noordhuis
49aa858b89
Run command must always take a single argument ( #156 )
2022-12-22 16:19:38 +01:00
Pieter Noordhuis
61ef0ba8c6
Handle nil environment ( #154 )
2022-12-22 15:31:32 +01:00
Pieter Noordhuis
7f83463ca3
Bump SDK to latest ( #151 )
2022-12-22 09:46:17 +01:00
Pieter Noordhuis
4026b2cda2
Mutator to convert paths to local notebooks files into artifacts ( #144 )
...
This lets you write:
```yaml
libraries:
- notebook:
path: ./events.sql
```
Instead of:
```yaml
artifacts:
events_sql:
notebook:
path: ./events.sql
libraries:
- notebook:
path: "${artifacts.events_sql.notebook.remote_path}"
```
2022-12-16 14:49:23 +01:00
Pieter Noordhuis
1a9a431b97
No need for nil check on map ( #143 )
2022-12-15 21:28:27 +01:00
Pieter Noordhuis
24a3b90713
Add "default" flag to environment block ( #142 )
...
If the environment is not set through command line argument or
environment variable, the bundle loads either 1) the only environment,
2) the only environment with the default flag set.
2022-12-15 21:28:14 +01:00
Pieter Noordhuis
35243db33c
Automatically install Terraform if needed ( #141 )
...
Users can opt out and use the system-installed version with the
following configuration:
```
bundle:
terraform:
exec_path: terraform
```
This will find the binary in $PATH and replace it with the found value.
If this is not set, the initialize phase will install Terraform in the
bundle's cache directory.
2022-12-15 17:30:33 +01:00
Pieter Noordhuis
32a37c1b83
Use filer.Filer in bundle/deployer/locker ( #136 )
...
Summary:
* All remote path arguments for deployer and locker are now relative to
root specified at initialization
* The workspace client is now a struct field so it doesn't have to be
passed around
2022-12-15 17:16:07 +01:00
Pieter Noordhuis
b111416fe5
Add `bricks bundle run` command ( #134 )
2022-12-15 15:12:47 +01:00
Pieter Noordhuis
72e89bf33c
Use pointers to resources in bundle configuration ( #140 )
...
Avoid copy-by-value when iterating over these maps.
2022-12-15 13:00:41 +01:00
Pieter Noordhuis
d0bd74c116
Run Go formatting with 1.19 ( #137 )
...
See https://tip.golang.org/doc/go1.19#go-doc .
2022-12-14 15:59:47 +01:00
Pieter Noordhuis
d713521d63
Convert job task libraries to TF JSON ( #132 )
2022-12-12 16:36:59 +01:00
Pieter Noordhuis
c255bd686a
Define deploy command as sequence of build phases ( #129 )
2022-12-12 12:49:25 +01:00
Pieter Noordhuis
8640696b4b
Add minimal test for conversion to TF JSON format ( #130 )
2022-12-12 11:31:28 +01:00
Pieter Noordhuis
94a86972e5
Allow multiple lookup functions for interpolation ( #128 )
2022-12-12 10:48:52 +01:00
Pieter Noordhuis
3f8e233a18
Function to limit interpolation to specific path ( #127 )
...
New function `IncludeLookupsInPath` is counterpart to
`ExcludeLookupsInPath`.
2022-12-12 10:30:17 +01:00
Pieter Noordhuis
4f668fc58b
Mutators to work with Terraform ( #124 )
...
This includes 3 mutators:
* Interpolate resources references to TF compatible format
* Convert resources struct to TF JSON format and write it to disk
* Run TF apply
2022-12-09 08:57:30 +01:00
Pieter Noordhuis
ff89c9d06f
Generate equivalent Go types from Terraform provider schema ( #122 )
...
It contains:
* `codegen` -- this turns the schema of the Databricks Terraform provider into Go types.
* `schema` -- the output of the above.
2022-12-06 16:26:19 +01:00
shreyas-goenka
d9d295f2a9
Implement Terraform state synchronization and deploy ( #98 )
...
https://user-images.githubusercontent.com/88374338/203669797-abebf99e-8fa6-4d6e-b57a-abd172d8020d.mov
2022-12-06 00:40:45 +01:00
Pieter Noordhuis
d5474c9673
Revert "Rename jobs -> workflows" ( #118 )
...
This reverts PR #111 .
This reverts commit 230811031f
.
2022-12-01 22:39:15 +01:00
Pieter Noordhuis
cdc776d89e
Parameterize interpolation function ( #117 )
...
By specifying a function typed `LookupFunction` the caller can customize
which path expressions to interpolate and which ones to skip. When we
express dependencies between resources their values are known by
Terraform at deploy time. Therefore, we have to skip interpolation for
`${resources.jobs.my_job.id}` and instead rewrite it to
`${databricks_job.my_job.id}` before passing it along to Terraform.
2022-12-01 22:38:49 +01:00
Pieter Noordhuis
34af98a8c3
Mutators to define current user and default artifact path ( #112 )
2022-12-01 11:17:29 +01:00
Pieter Noordhuis
230811031f
Rename jobs -> workflows ( #111 )
2022-12-01 09:35:21 +01:00
Pieter Noordhuis
c4d63eac70
Rudimentary interpolation support ( #108 )
...
Performs interpolation on string field.
It looks for patterns `${foo.bar}` where `foo.bar` points to a string
field in the configuration data model.
It does not support traversal (e.g. `${foo}` with `foo` equal
to`${bar}`), hence "rudimentary".
2022-12-01 09:33:42 +01:00
Pieter Noordhuis
4064a21797
Function to return bundle's cache directory ( #109 )
...
Parallel of `project.CacheDir()` introduced in
https://github.com/databricks/bricks/pull/82 .
2022-11-30 14:40:41 +01:00