databricks-cli/bundle
Pieter Noordhuis 5d9bc3b553
Allow artifact path to be located outside the sync root (#2128)
## Changes

We perform a check during path translation that the path being
referenced is contained in the bundle's sync root. If it isn't, it's not
a valid remote reference. However, this doesn't apply to paths that are
_always_ local, such as the artifact path. An artifact's build command
is executed in its path. Files created by the artifact build (e.g.
wheels or JARs) don't need to be in the sync root because they have a
dedicated and different upload path into `${workspace.artifact_path}`.

Therefore, this check that a path is contained in the bundle's sync root
doesn't apply to artifact paths. This change modifies the structure of
path translation to allow opting out of this check.

Fixes #1927.

## Tests

* Existing and new tests pass.
* Manually confirmed that building and using a wheel built outside the
sync root path works as expected.
* No acceptance tests because we don't run build as part of validate.
2025-01-14 08:34:55 +00:00
..
apps Added support for Databricks Apps in DABs (#1928) 2025-01-13 16:43:48 +00:00
artifacts Enable perfsprint linter and apply autofix (#2071) 2025-01-07 10:49:23 +00:00
config Allow artifact path to be located outside the sync root (#2128) 2025-01-14 08:34:55 +00:00
deploy Added support for Databricks Apps in DABs (#1928) 2025-01-13 16:43:48 +00:00
env Remove support for DATABRICKS_BUNDLE_INCLUDES (#1317) 2024-03-27 10:13:54 +00:00
internal Added support for Databricks Apps in DABs (#1928) 2025-01-13 16:43:48 +00:00
libraries Enable perfsprint linter and apply autofix (#2071) 2025-01-07 10:49:23 +00:00
metadata Make `file_path` and `artifact_path` fields consistent with json tag (#987) 2023-11-15 13:37:26 +00:00
paths Fixed adding /Workspace prefix for resource paths (#1866) 2024-10-30 17:34:11 +00:00
permissions Added support for Databricks Apps in DABs (#1928) 2025-01-13 16:43:48 +00:00
phases Added support for Databricks Apps in DABs (#1928) 2025-01-13 16:43:48 +00:00
render Enable gofumpt and goimports in golangci-lint (#1999) 2024-12-12 10:28:42 +01:00
resources Fix segfault in bundle summary command (#1937) 2024-11-28 12:27:24 +00:00
run Added support for Databricks Apps in DABs (#1928) 2025-01-13 16:43:48 +00:00
schema Added support for Databricks Apps in DABs (#1928) 2025-01-13 16:43:48 +00:00
scripts Rename `RootPath` -> `BundleRootPath` (#1792) 2024-09-27 10:03:05 +00:00
tests Allow artifact path to be located outside the sync root (#2128) 2025-01-14 08:34:55 +00:00
trampoline Enable perfsprint linter and apply autofix (#2071) 2025-01-07 10:49:23 +00:00
bundle.go Encourage the use of root_path in production to ensure single deployment (#1712) 2025-01-13 12:19:12 +00:00
bundle_read_only.go Properly read Git metadata when running inside workspace (#1945) 2024-12-05 10:13:13 +00:00
bundle_test.go Enable testifylint and fix the issues (#2065) 2025-01-02 12:03:41 +01:00
context.go Rename variable `bundle -> b` (#989) 2023-11-15 14:03:36 +00:00
context_test.go Enable testifylint and fix the issues (#2065) 2025-01-02 12:03:41 +01:00
deferred.go Enable gofumpt and goimports in golangci-lint (#1999) 2024-12-12 10:28:42 +01:00
deferred_test.go Enable 'govet' linter; expand log/diag with non-f functions (#1996) 2024-12-11 16:42:03 +00:00
if.go Return early in bundle destroy if no deployment exists (#1581) 2024-07-09 15:08:38 +00:00
if_test.go Return early in bundle destroy if no deployment exists (#1581) 2024-07-09 15:08:38 +00:00
log_string.go Return `diag.Diagnostics` from mutators (#1305) 2024-03-25 14:18:47 +00:00
mutator.go Return `diag.Diagnostics` from mutators (#1305) 2024-03-25 14:18:47 +00:00
mutator_read_only.go Added validate mutator to surface additional bundle warnings (#1352) 2024-04-18 15:13:16 +00:00
mutator_test.go Return `diag.Diagnostics` from mutators (#1305) 2024-03-25 14:18:47 +00:00
parallel.go Added validate mutator to surface additional bundle warnings (#1352) 2024-04-18 15:13:16 +00:00
parallel_test.go Fix flaky tests for the parallel mutator (#1426) 2024-05-13 12:16:43 +00:00
root.go Enable perfsprint linter and apply autofix (#2071) 2025-01-07 10:49:23 +00:00
root_test.go Enable gofumpt and goimports in golangci-lint (#1999) 2024-12-12 10:28:42 +01:00
seq.go Return `diag.Diagnostics` from mutators (#1305) 2024-03-25 14:18:47 +00:00
seq_test.go Return `diag.Diagnostics` from mutators (#1305) 2024-03-25 14:18:47 +00:00