Allow referencing job libraries outside bundle root without the need to specify sync root#2842
Conversation
…to specify sync root
|
Blocked until this merged and released and we have metrics gathered #2863 |
## Changes Emit warnings and metrics when path fallback is used ## Why The fallback is pretty old and currently block the other feature changes (#2842), so instead we'd prefer to raise the warning and eventually remove the fallback ## Tests Added acceptance tests <!-- If your PR needs to be included in the release notes for next release, add a separate entry in NEXT_CHANGELOG.md as part of your PR. -->
## Changes Emit warnings and metrics when path fallback is used ## Why The fallback is pretty old and currently block the other feature changes (#2842), so instead we'd prefer to raise the warning and eventually remove the fallback ## Tests Added acceptance tests <!-- If your PR needs to be included in the release notes for next release, add a separate entry in NEXT_CHANGELOG.md as part of your PR. -->
|
This PR has not received an update in a while. If you want to keep this PR open, please leave a comment below or push a new commit and auto-close will be canceled. |
|
@andrewnester This will resurrect once the path fallback has been removed, right? |
|
Yes, exactly, reopening it for now |
|
pietern
left a comment
There was a problem hiding this comment.
Can we rip out the fallback entirely?
| @@ -0,0 +1,8 @@ | |||
| # We run this test only locally for now because we need to figure out how to do | |||
| # bundle destroy on script.cleanup first. | |||
There was a problem hiding this comment.
Why doesn't that work out of the box?
There was a problem hiding this comment.
Ah, I think it's just an old comment, but still doesn't make much sense to run this on cloud
| for key, job := range t.b.Config.Resources.Jobs { | ||
| if job.GitSource != nil { | ||
| ignore = append(ignore, key) | ||
| } |
There was a problem hiding this comment.
For later: libraries are never pulled from a Git source, IIRC, so translation still applies there...
I was planning to do it in the release after, for now, it would still work (aka show a useful error) for non library files such as notebooks for example |
## Release v0.267.0 ### CLI * Introduce retries to `databricks psql` command ([#3492](#3492)) * Add rule files for coding agents working on the CLI code base ([#3245](#3245)) ### Dependency updates * Upgrade TF provider to 1.88.0 ([#3529](#3529)) * Upgrade Go SDK to 0.82.0 ### Bundles * Update default-python template to make DB Connect work out of the box for unit tests, using uv to install dependencies ([#3254](#3254)) * Add support for `TaskRetryMode` for continuous jobs ([#3529](#3529)) * Add support for specifying database instance as an application resource ([#3529](#3529)) * Allow referencing job libraries outside bundle root without the need to specify sync root ([#2842](#2842)) * Add top level `run_as` support for Lakeflow Declarative Pipelines ([#3307](#3307))
Changes
Allow referencing job libraries outside bundle root without the need to specify sync root.
Previously it was failing with error indicating the libraries are not sync root, now it does not fail anymore.
Why
Libraries has their own upload cycle and do not rely on general bundle sync mechanism therefore it is not necessary to specify or check that libraries are in sync root.
Tests
Added acceptance tests