databricks-cli/bundle/config
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
..
generate Added support for Databricks Apps in DABs (#1928) 2025-01-13 16:43:48 +00:00
loader Enable gofumpt and goimports in golangci-lint (#1999) 2024-12-12 10:28:42 +01:00
mutator Allow artifact path to be located outside the sync root (#2128) 2025-01-14 08:34:55 +00:00
resources Added support for Databricks Apps in DABs (#1928) 2025-01-13 16:43:48 +00:00
validate Enable perfsprint linter and apply autofix (#2071) 2025-01-07 10:49:23 +00:00
variable Enable perfsprint linter and apply autofix (#2071) 2025-01-07 10:49:23 +00:00
artifact.go Enable perfsprint linter and apply autofix (#2071) 2025-01-07 10:49:23 +00:00
artifacts_test.go Added exec.NewCommandExecutor to execute commands with correct interpreter (#1075) 2023-12-21 15:45:23 +00:00
bundle.go Add the `bundle_uuid` helper function for templates (#1947) 2024-12-02 10:29:29 +00:00
deployment.go Make lock optional in the JSON schema (#1738) 2024-09-02 08:39:08 +00:00
experimental.go Add 'experimental/python' support (#2052) 2025-01-08 09:29:45 +00:00
filename.go Move bundle configuration filename code (#917) 2023-10-25 09:54:39 +00:00
filename_test.go Move bundle configuration filename code (#917) 2023-10-25 09:54:39 +00:00
git.go Use dynamic configuration model in bundles (#1098) 2024-02-16 19:41:58 +00:00
lock.go Disable locking for development mode (#1302) 2024-04-18 01:59:39 +00:00
lock_test.go Acquire lock prior to deploy (#270) 2023-03-22 16:37:26 +01:00
presets.go Enable gofumpt and goimports in golangci-lint (#1999) 2024-12-12 10:28:42 +01:00
resources.go Added support for Databricks Apps in DABs (#1928) 2025-01-13 16:43:48 +00:00
resources_test.go Enable intrange linter and apply autofix (#2069) 2025-01-03 09:25:07 +00:00
root.go Encourage the use of root_path in production to ensure single deployment (#1712) 2025-01-13 12:19:12 +00:00
root_test.go Enable gofumpt and goimports in golangci-lint (#1999) 2024-12-12 10:28:42 +01:00
sync.go Add paths field to bundle sync configuration (#1694) 2024-08-21 15:33:25 +00:00
target.go Added support for creating all-purpose clusters (#1698) 2024-09-23 10:42:34 +00:00
workspace.go Always prepend bundle remote paths with /Workspace (#1724) 2024-10-02 15:34:00 +00:00
workspace_test.go Add error checking in tests and enable errcheck there (#1980) 2024-12-09 13:56:41 +01:00