Correctly resolve relative includes in databricks.yml from parent folders#1870
Correctly resolve relative includes in databricks.yml from parent folders#1870misha-db wants to merge 6 commits into
databricks.yml from parent folders#1870Conversation
| return bundle.include; | ||
| } | ||
|
|
||
| async getIncludedFilesGlob() { |
|
Friendly nudge on this one — this fix for relative includes in |
|
Hello This addition would be a great to fix an issue with the functionality for many of the bundles Thank you! |
|
If integration tests don't run automatically, an authorized user can run them manually by following the instructions below: Trigger: Inputs:
Checks will be approved automatically on success. |
|
The PR fixes initial include resolution in BundleFileSet, but the extension's live refresh path still depends on BundleWatcher. So after startup or after touching databricks.yml, parent-folder includes can be merged correctly, but edits to those parent include files themselves won't be observed because BundleWatcher only watches under the active project root. Detailed finding: parent-directory includes are now returned by BundleFileSet.getIncludedFiles() (BundleFileSet.ts:103-120), but BundleWatcher still only watches YAML files under activeProjectUri (BundleWatcher.ts:36-42). For the issue’s layout, folder/sub-folder/databricks.yml includes ../../dab/databricks-shared.yml; that shared file is outside activeProjectUri, so edits/creates/deletes there won’t fire yamlFileChangeHandler, won’t invalidate bundleDataCache, and won’t refresh targets/prevalidation state until the user reloads or touches the root bundle file. If this PR is adding support for parent-folder includes, the watcher should also cover those resolved include paths, or otherwise refresh from them. |
Changes
Correctly resolve relative includes in
databricks.ymlfrom parent foldersCloses: #1818
Closes: #1731
Tests
Unit tests in BundleFileSet.test.ts