Skip to content

Validate the test dependencies of pipelines in bundle validate - #7428

Draft
tharunbhuk-db wants to merge 3 commits into
tharun/pipelines-test-pr4-bundlesfrom
tharun/pipelines-test-b3-dependency-checks
Draft

tharunbhuk-db wants to merge 3 commits into
tharun/pipelines-test-pr4-bundlesfrom
tharun/pipelines-test-b3-dependency-checks

Conversation

@tharunbhuk-db

@tharunbhuk-db tharunbhuk-db commented Nov 10, 2026 •

Copy link
Copy Markdown
Contributor

🥞 Stacked PR


Changes

  • bundle validate rejects the testing.environment.dependencies that the API rejects: package names, URLs, and a requirements file without -r.
  • The check runs after TranslatePaths, so it checks the paths that deploy sends.

Why

These mistakes otherwise fail only at deploy time, with a service error. Open question from review: whether the CLI should validate test dependencies at all, or rely on the service as it does for testing.sources. This PR is separate so that it can be decided, or dropped, on its own.

Tests

  • Unit tests in bundle/config/validate/pipeline_testing_dependencies_test.go.
  • Acceptance test acceptance/bundle/resources/pipelines/testing-dependencies.

This pull request and its description were written by Cursor.

…oyed folder

With DATABRICKS_BUNDLE_ENABLE_EXPERIMENTAL_PIPELINE_TESTING=true, a local project
folder after -e, with optional extras such as -e ./project[test], maps to its
deployed folder instead of failing. This applies to job and pipeline environment
dependencies. With the variable off, the old behavior stays.
Add resources.pipelines.<key>.testing, with the test sources and test-only
dependencies that databricks pipelines test runs with.

The property is experimental. It needs
DATABRICKS_BUNDLE_ENABLE_EXPERIMENTAL_PIPELINE_TESTING=true. While the variable is
off, bundle validate rejects testing and names the variable, and bundles deploy
exactly as before.

Relative paths in testing are translated like libraries. Local wheels in test
dependencies are uploaded like other libraries, and the same-name check covers
them. bundle plan shows changes to testing made outside the bundle, and bundle
deploy undoes them. The CLI uses its own types and raw calls for testing,
because the Go SDK does not have the field yet. The test server stores
spec.testing on Create and Edit and returns it on Get.
bundle validate rejects the testing.environment.dependencies that the API
rejects: package names, URLs, and a requirements file without -r. It runs after
TranslatePaths, so it checks the paths that deploy sends.
@github-actions

Copy link
Copy Markdown
Contributor

Commit: 1b4896634 | Workflow run

Regression test report

Selected 6 changed tests (limit=20, 0 not selected)

12 tests: regression=12 unreleased=0 coverage=0 failing=0
test branch main (b694c4c) latest (v1.25.0)
TestAccept/bundle/environments/editable-folder/DMS= ✅ ❌ ❌
TestAccept/bundle/environments/editable-folder/DMS=true ✅ ❌ ❌
TestAccept/bundle/refschema/DMS= ✅ ❌ ❌
TestAccept/bundle/refschema/DMS=true ✅ ❌ ❌
TestAccept/bundle/resources/pipelines/testing-dependencies/DMS= ✅ ❌ ❌
TestAccept/bundle/resources/pipelines/testing-dependencies/DMS=true ✅ ❌ ❌
TestAccept/bundle/resources/pipelines/testing-disabled/DMS= ✅ ❌ ❌
TestAccept/bundle/resources/pipelines/testing-disabled/DMS=true ✅ ❌ ❌
TestAccept/bundle/resources/pipelines/testing-same-name-libraries/DMS= ✅ ❌ ❌
TestAccept/bundle/resources/pipelines/testing-same-name-libraries/DMS=true ✅ ❌ ❌
TestAccept/bundle/resources/pipelines/testing/DMS= ✅ ❌ ❌
TestAccept/bundle/resources/pipelines/testing/DMS=true ✅ ❌ ❌
TestAccept/bundle/environments/editable-folder/DMS=: branch ✅ | main (b694c4c) ❌ | latest (v1.25.0) ❌

main (b694c4c):

acceptance_test.go:1345: 
        	Error Trace:	/home/runner/work/cli/cli/libs/testdiff/testdiff.go:22
        	            				/home/runner/work/cli/cli/acceptance/acceptance_test.go:1345
        	            				/home/runner/work/cli/cli/acceptance/acceptance_test.go:1086
        	            				/home/runner/work/cli/cli/acceptance/acceptance_test.go:660
        	Error:      	Not equal: 
        	            	expected: "\n>>> [CLI] bundle validate -o json\n{\n  \"job\": [\n    \"-e /Workspace/Users/[USERNAME]/.bundle/editable-folder/default/files/project\"\n  ],\n  \"pipeline\": [\n    \"-e /Workspace/Users/[USERNAME]/.bundle/editable-folder/default/files/project\"\n  ],\n  \"testing\": [\n    \"-e /Workspace/Users/[USERNAME]/.bundle/editable-folder/default/files/project[test]\"\n  ]\n}\n"
        	            	actual  : "\n>>> [CLI] bundle validate -o json\nWarning: unknown field: testing\n  at resources.pipelines.my_pipeline\n  in databricks.yml:27:7\n\nError: unable to determine if [TEST_TMP_DIR]/project is not a notebook: read [TEST_TMP_DIR]/project: is a directory\n\n{\n  \"job\": [\n    \"-e project\"\n  ],\n  \"pipeline\": [\n    \"-e project\"\n  ],\n  \"testing\": null\n}\n\nExit code: 1\n"
        	            	
        	            	Diff:
        	            	--- Expected
        	            	+++ Actual
        	            	@@ -2,13 +2,19 @@
        	            	 >>> [CLI] bundle validate -o json
        	            	+Warning: unknown field: testing
        	            	+  at resources.pipelines.my_pipeline
        	            	+  in databricks.yml:27:7
        	            	+
        	            	+Error: unable to determine if [TEST_TMP_DIR]/project is not a notebook: read [TEST_TMP_DIR]/project: is a directory
        	            	+
        	            	 {
        	            	   "job": [
        	            	-    "-e /Workspace/Users/[USERNAME]/.bundle/editable-folder/default/files/project"
        	            	+    "-e project"
        	            	   ],
        	            	   "pipeline": [
        	            	-    "-e /Workspace/Users/[USERNAME]/.bundle/editable-folder/default/files/project"
        	            	+    "-e project"
        	            	   ],
        	            	-  "testing": [
        	            	-    "-e /Workspace/Users/[USERNAME]/.bundle/editable-folder/default/files/project[test]"
        	            	-  ]
        	            	+  "testing": null
        	            	 }
        	            	 
        	            	+Exit code: 1
        	            	+
        	Test:       	TestAccept/bundle/environments/editable-folder/DMS=
        	Messages:   	bundle/environments/editable-folder/output.txt vs /tmp/TestAcceptbundleenvironmentseditable-folderDMS=3474240092/002/output.txt

latest (v1.25.0): same output as main (b694c4c)

TestAccept/bundle/environments/editable-folder/DMS=true: branch ✅ | main (b694c4c) ❌ | latest (v1.25.0) ❌

main (b694c4c):

acceptance_test.go:1345: 
        	Error Trace:	/home/runner/work/cli/cli/libs/testdiff/testdiff.go:22
        	            				/home/runner/work/cli/cli/acceptance/acceptance_test.go:1345
        	            				/home/runner/work/cli/cli/acceptance/acceptance_test.go:1086
        	            				/home/runner/work/cli/cli/acceptance/acceptance_test.go:660
        	Error:      	Not equal: 
        	            	expected: "\n>>> [CLI] bundle validate -o json\n{\n  \"job\": [\n    \"-e /Workspace/Users/[USERNAME]/.bundle/editable-folder/default/files/project\"\n  ],\n  \"pipeline\": [\n    \"-e /Workspace/Users/[USERNAME]/.bundle/editable-folder/default/files/project\"\n  ],\n  \"testing\": [\n    \"-e /Workspace/Users/[USERNAME]/.bundle/editable-folder/default/files/project[test]\"\n  ]\n}\n"
        	            	actual  : "\n>>> [CLI] bundle validate -o json\nWarning: unknown field: testing\n  at resources.pipelines.my_pipeline\n  in databricks.yml:27:7\n\nError: unable to determine if [TEST_TMP_DIR]/project is not a notebook: read [TEST_TMP_DIR]/project: is a directory\n\n{\n  \"job\": [\n    \"-e project\"\n  ],\n  \"pipeline\": [\n    \"-e project\"\n  ],\n  \"testing\": null\n}\n\nExit code: 1\n"
        	            	
        	            	Diff:
        	            	--- Expected
        	            	+++ Actual
        	            	@@ -2,13 +2,19 @@
        	            	 >>> [CLI] bundle validate -o json
        	            	+Warning: unknown field: testing
        	            	+  at resources.pipelines.my_pipeline
        	            	+  in databricks.yml:27:7
        	            	+
        	            	+Error: unable to determine if [TEST_TMP_DIR]/project is not a notebook: read [TEST_TMP_DIR]/project: is a directory
        	            	+
        	            	 {
        	            	   "job": [
        	            	-    "-e /Workspace/Users/[USERNAME]/.bundle/editable-folder/default/files/project"
        	            	+    "-e project"
        	            	   ],
        	            	   "pipeline": [
        	            	-    "-e /Workspace/Users/[USERNAME]/.bundle/editable-folder/default/files/project"
        	            	+    "-e project"
        	            	   ],
        	            	-  "testing": [
        	            	-    "-e /Workspace/Users/[USERNAME]/.bundle/editable-folder/default/files/project[test]"
        	            	-  ]
        	            	+  "testing": null
        	            	 }
        	            	 
        	            	+Exit code: 1
        	            	+
        	Test:       	TestAccept/bundle/environments/editable-folder/DMS=true
        	Messages:   	bundle/environments/editable-folder/output.txt vs /tmp/TestAcceptbundleenvironmentseditable-folderDMS=true1050890902/002/output.txt

latest (v1.25.0): same output as main (b694c4c)

TestAccept/bundle/refschema/DMS=: branch ✅ | main (b694c4c) ❌ | latest (v1.25.0) ❌

main (b694c4c):

acceptance_test.go:1345: Diff:
        --- bundle/refschema/output/pipelines.txt
        +++ /tmp/TestAcceptbundlerefschemaDMS=1896061415/001/output/pipelines.txt
        @@ -867,14 +867,6 @@
         resources.pipelines.*.tags	map[string]string	ALL
         resources.pipelines.*.tags.*	string	ALL
         resources.pipelines.*.target	string	ALL
        -resources.pipelines.*.testing	*resources.PipelineTesting	ALL
        -resources.pipelines.*.testing.environment	*resources.PipelineTestEnvironment	ALL
        -resources.pipelines.*.testing.environment.dependencies	[]string	ALL
        -resources.pipelines.*.testing.environment.dependencies[*]	string	ALL
        -resources.pipelines.*.testing.sources	[]resources.PipelineTestSource	ALL
        -resources.pipelines.*.testing.sources[*]	resources.PipelineTestSource	ALL
        -resources.pipelines.*.testing.sources[*].glob	*pipelines.PathPattern	ALL
        -resources.pipelines.*.testing.sources[*].glob.include	string	ALL
         resources.pipelines.*.trigger	*pipelines.PipelineTrigger	ALL
         resources.pipelines.*.trigger.cron	*pipelines.CronTrigger	ALL
         resources.pipelines.*.trigger.cron.quartz_cron_schedule	string	ALL

latest (v1.25.0): same output as main (b694c4c)

TestAccept/bundle/refschema/DMS=true: branch ✅ | main (b694c4c) ❌ | latest (v1.25.0) ❌

main (b694c4c):

acceptance_test.go:1345: Diff:
        --- bundle/refschema/output/pipelines.txt
        +++ /tmp/TestAcceptbundlerefschemaDMS=true2348467071/001/output/pipelines.txt
        @@ -867,14 +867,6 @@
         resources.pipelines.*.tags	map[string]string	ALL
         resources.pipelines.*.tags.*	string	ALL
         resources.pipelines.*.target	string	ALL
        -resources.pipelines.*.testing	*resources.PipelineTesting	ALL
        -resources.pipelines.*.testing.environment	*resources.PipelineTestEnvironment	ALL
        -resources.pipelines.*.testing.environment.dependencies	[]string	ALL
        -resources.pipelines.*.testing.environment.dependencies[*]	string	ALL
        -resources.pipelines.*.testing.sources	[]resources.PipelineTestSource	ALL
        -resources.pipelines.*.testing.sources[*]	resources.PipelineTestSource	ALL
        -resources.pipelines.*.testing.sources[*].glob	*pipelines.PathPattern	ALL
        -resources.pipelines.*.testing.sources[*].glob.include	string	ALL
         resources.pipelines.*.trigger	*pipelines.PipelineTrigger	ALL
         resources.pipelines.*.trigger.cron	*pipelines.CronTrigger	ALL
         resources.pipelines.*.trigger.cron.quartz_cron_schedule	string	ALL

latest (v1.25.0):

acceptance_test.go:1345: Diff:
        --- bundle/refschema/output/pipelines.txt
        +++ /tmp/TestAcceptbundlerefschemaDMS=true2835985247/001/output/pipelines.txt
        @@ -867,14 +867,6 @@
         resources.pipelines.*.tags	map[string]string	ALL
         resources.pipelines.*.tags.*	string	ALL
         resources.pipelines.*.target	string	ALL
        -resources.pipelines.*.testing	*resources.PipelineTesting	ALL
        -resources.pipelines.*.testing.environment	*resources.PipelineTestEnvironment	ALL
        -resources.pipelines.*.testing.environment.dependencies	[]string	ALL
        -resources.pipelines.*.testing.environment.dependencies[*]	string	ALL
        -resources.pipelines.*.testing.sources	[]resources.PipelineTestSource	ALL
        -resources.pipelines.*.testing.sources[*]	resources.PipelineTestSource	ALL
        -resources.pipelines.*.testing.sources[*].glob	*pipelines.PathPattern	ALL
        -resources.pipelines.*.testing.sources[*].glob.include	string	ALL
         resources.pipelines.*.trigger	*pipelines.PipelineTrigger	ALL
         resources.pipelines.*.trigger.cron	*pipelines.CronTrigger	ALL
         resources.pipelines.*.trigger.cron.quartz_cron_schedule	string	ALL
        
FAIL
TestAccept/bundle/resources/pipelines/testing-dependencies/DMS=: branch ✅ | main (b694c4c) ❌ | latest (v1.25.0) ❌

main (b694c4c):

acceptance_test.go:1345: Diff:
        --- bundle/resources/pipelines/testing-dependencies/output.txt
        +++ /tmp/TestAcceptbundleresourcespipelinestesting-dependenciesDMS=1768089823/002/output.txt
        @@ -1,39 +1,17 @@
         
         >>> musterr [CLI] bundle validate
        -Error: testing.environment.dependencies must point at files, not "faker==33.0"
        -  at resources.pipelines.orders.testing.environment.dependencies[3]
        -  in databricks.yml:19:15
        +Warning: unknown field: testing
        +  at resources.pipelines.orders
        +  in databricks.yml:8:7
         
        -A test dependency is a project folder, a wheel, or a requirements file after -r, in the bundle, under /Workspace/, or under /Volumes/. Declare test packages in a project file, such as the test extra of a pyproject.toml, and reference its folder, for example -e ./project[test]. For a path in the bundle, use -e or -r followed by a space. URLs, other pip options, and .. are not supported.
        -
        -Error: testing.environment.dependencies must point at files, not "git+https://github.com/example/helpers"
        -  at resources.pipelines.orders.testing.environment.dependencies[4]
        -  in databricks.yml:20:15
        -
        -A test dependency is a project folder, a wheel, or a requirements file after -r, in the bundle, under /Workspace/, or under /Volumes/. Declare test packages in a project file, such as the test extra of a pyproject.toml, and reference its folder, for example -e ./project[test]. For a path in the bundle, use -e or -r followed by a space. URLs, other pip options, and .. are not supported.
        -
        -Error: testing.environment.dependencies needs -r before the requirements file "/Workspace/Shared/orders/requirements.txt"
        -  at resources.pipelines.orders.testing.environment.dependencies[5]
        -  in databricks.yml:21:15
        -
        -Without -r, pip treats the file as a package to install. For example: -r ./tests/requirements.txt.
        -
        -Error: testing.environment.dependencies must point at files, not "--requirement ./orders/requirements.txt"
        -  at resources.pipelines.orders.testing.environment.dependencies[6]
        -  in databricks.yml:22:15
        -
        -A test dependency is a project folder, a wheel, or a requirements file after -r, in the bundle, under /Workspace/, or under /Volumes/. Declare test packages in a project file, such as the test extra of a pyproject.toml, and reference its folder, for example -e ./project[test]. For a path in the bundle, use -e or -r followed by a space. URLs, other pip options, and .. are not supported.
        -
        -Error: testing.environment.dependencies must point at files, not "/Workspace/Shared/orders -i https://example.com/simple"
        -  at resources.pipelines.orders.testing.environment.dependencies[7]
        -  in databricks.yml:23:15
        -
        -A test dependency is a project folder, a wheel, or a requirements file after -r, in the bundle, under /Workspace/, or under /Volumes/. Declare test packages in a project file, such as the test extra of a pyproject.toml, and reference its folder, for example -e ./project[test]. For a path in the bundle, use -e or -r followed by a space. URLs, other pip options, and .. are not supported.
        -
         Name: pipeline-testing-dependencies
         Target: default
         Workspace:
           User: [USERNAME]
           Path: /Workspace/Users/[USERNAME]/.bundle/pipeline-testing-dependencies/default
         
        -Found 5 errors
        +Found 1 warning
        +
        +Unexpected success
        +
        +Exit code: 1
        
    acceptance_test.go:1135: Test produced unexpected files:
        .databricks/.gitignore

latest (v1.25.0): same output as main (b694c4c)

TestAccept/bundle/resources/pipelines/testing-dependencies/DMS=true: branch ✅ | main (b694c4c) ❌ | latest (v1.25.0) ❌

main (b694c4c):

acceptance_test.go:1345: Diff:
        --- bundle/resources/pipelines/testing-dependencies/output.txt
        +++ /tmp/TestAcceptbundleresourcespipelinestesting-dependenciesDMS=t3187022659/002/output.txt
        @@ -1,39 +1,17 @@
         
         >>> musterr [CLI] bundle validate
        -Error: testing.environment.dependencies must point at files, not "faker==33.0"
        -  at resources.pipelines.orders.testing.environment.dependencies[3]
        -  in databricks.yml:19:15
        +Warning: unknown field: testing
        +  at resources.pipelines.orders
        +  in databricks.yml:8:7
         
        -A test dependency is a project folder, a wheel, or a requirements file after -r, in the bundle, under /Workspace/, or under /Volumes/. Declare test packages in a project file, such as the test extra of a pyproject.toml, and reference its folder, for example -e ./project[test]. For a path in the bundle, use -e or -r followed by a space. URLs, other pip options, and .. are not supported.
        -
        -Error: testing.environment.dependencies must point at files, not "git+https://github.com/example/helpers"
        -  at resources.pipelines.orders.testing.environment.dependencies[4]
        -  in databricks.yml:20:15
        -
        -A test dependency is a project folder, a wheel, or a requirements file after -r, in the bundle, under /Workspace/, or under /Volumes/. Declare test packages in a project file, such as the test extra of a pyproject.toml, and reference its folder, for example -e ./project[test]. For a path in the bundle, use -e or -r followed by a space. URLs, other pip options, and .. are not supported.
        -
        -Error: testing.environment.dependencies needs -r before the requirements file "/Workspace/Shared/orders/requirements.txt"
        -  at resources.pipelines.orders.testing.environment.dependencies[5]
        -  in databricks.yml:21:15
        -
        -Without -r, pip treats the file as a package to install. For example: -r ./tests/requirements.txt.
        -
        -Error: testing.environment.dependencies must point at files, not "--requirement ./orders/requirements.txt"
        -  at resources.pipelines.orders.testing.environment.dependencies[6]
        -  in databricks.yml:22:15
        -
        -A test dependency is a project folder, a wheel, or a requirements file after -r, in the bundle, under /Workspace/, or under /Volumes/. Declare test packages in a project file, such as the test extra of a pyproject.toml, and reference its folder, for example -e ./project[test]. For a path in the bundle, use -e or -r followed by a space. URLs, other pip options, and .. are not supported.
        -
        -Error: testing.environment.dependencies must point at files, not "/Workspace/Shared/orders -i https://example.com/simple"
        -  at resources.pipelines.orders.testing.environment.dependencies[7]
        -  in databricks.yml:23:15
        -
        -A test dependency is a project folder, a wheel, or a requirements file after -r, in the bundle, under /Workspace/, or under /Volumes/. Declare test packages in a project file, such as the test extra of a pyproject.toml, and reference its folder, for example -e ./project[test]. For a path in the bundle, use -e or -r followed by a space. URLs, other pip options, and .. are not supported.
        -
         Name: pipeline-testing-dependencies
         Target: default
         Workspace:
           User: [USERNAME]
           Path: /Workspace/Users/[USERNAME]/.bundle/pipeline-testing-dependencies/default
         
        -Found 5 errors
        +Found 1 warning
        +
        +Unexpected success
        +
        +Exit code: 1
        
    acceptance_test.go:1135: Test produced unexpected files:
        .databricks/.gitignore

latest (v1.25.0): same output as main (b694c4c)

TestAccept/bundle/resources/pipelines/testing-disabled/DMS=: branch ✅ | main (b694c4c) ❌ | latest (v1.25.0) ❌

main (b694c4c):

acceptance_test.go:1345: 
        	Error Trace:	/home/runner/work/cli/cli/libs/testdiff/testdiff.go:22
        	            				/home/runner/work/cli/cli/acceptance/acceptance_test.go:1345
        	            				/home/runner/work/cli/cli/acceptance/acceptance_test.go:1086
        	            				/home/runner/work/cli/cli/acceptance/acceptance_test.go:660
        	Error:      	Not equal: 
        	            	expected: "\n>>> musterr [CLI] bundle validate\nError: the testing property of pipelines is experimental. Set DATABRICKS_BUNDLE_ENABLE_EXPERIMENTAL_PIPELINE_TESTING=true to enable it\n  at resources.pipelines.orders.testing\n  in databricks.yml:9:9\n\nName: pipeline-testing-disabled\nTarget: default\n\nFound 1 error\n"
        	            	actual  : "\n>>> musterr [CLI] bundle validate\nWarning: unknown field: testing\n  at resources.pipelines.orders\n  in databricks.yml:8:7\n\nName: pipeline-testing-disabled\nTarget: default\nWorkspace:\n  User: [USERNAME]\n  Path: /Workspace/Users/[USERNAME]/.bundle/pipeline-testing-disabled/default\n\nFound 1 warning\n\nUnexpected success\n\nExit code: 1\n"
        	            	
        	            	Diff:
        	            	--- Expected
        	            	+++ Actual
        	            	@@ -2,5 +2,5 @@
        	            	 >>> musterr [CLI] bundle validate
        	            	-Error: the testing property of pipelines is experimental. Set DATABRICKS_BUNDLE_ENABLE_EXPERIMENTAL_PIPELINE_TESTING=true to enable it
        	            	-  at resources.pipelines.orders.testing
        	            	-  in databricks.yml:9:9
        	            	+Warning: unknown field: testing
        	            	+  at resources.pipelines.orders
        	            	+  in databricks.yml:8:7
        	            	 
        	            	@@ -8,4 +8,11 @@
        	            	 Target: default
        	            	+Workspace:
        	            	+  User: [USERNAME]
        	            	+  Path: /Workspace/Users/[USERNAME]/.bundle/pipeline-testing-disabled/default
        	            	 
        	            	-Found 1 error
        	            	+Found 1 warning
        	            	 
        	            	+Unexpected success
        	            	+
        	            	+Exit code: 1
        	            	+
        	Test:       	TestAccept/bundle/resources/pipelines/testing-disabled/DMS=
        	Messages:   	bundle/resources/pipelines/testing-disabled/output.txt vs /tmp/TestAcceptbundleresourcespipelinestesting-disabledDMS=4132234864/002/output.txt
    acceptance_test.go:1135: Test produced unexpected files:
        .databricks/.gitignore

latest (v1.25.0): same output as main (b694c4c)

TestAccept/bundle/resources/pipelines/testing-disabled/DMS=true: branch ✅ | main (b694c4c) ❌ | latest (v1.25.0) ❌

main (b694c4c):

acceptance_test.go:1345: 
        	Error Trace:	/home/runner/work/cli/cli/libs/testdiff/testdiff.go:22
        	            				/home/runner/work/cli/cli/acceptance/acceptance_test.go:1345
        	            				/home/runner/work/cli/cli/acceptance/acceptance_test.go:1086
        	            				/home/runner/work/cli/cli/acceptance/acceptance_test.go:660
        	Error:      	Not equal: 
        	            	expected: "\n>>> musterr [CLI] bundle validate\nError: the testing property of pipelines is experimental. Set DATABRICKS_BUNDLE_ENABLE_EXPERIMENTAL_PIPELINE_TESTING=true to enable it\n  at resources.pipelines.orders.testing\n  in databricks.yml:9:9\n\nName: pipeline-testing-disabled\nTarget: default\n\nFound 1 error\n"
        	            	actual  : "\n>>> musterr [CLI] bundle validate\nWarning: unknown field: testing\n  at resources.pipelines.orders\n  in databricks.yml:8:7\n\nName: pipeline-testing-disabled\nTarget: default\nWorkspace:\n  User: [USERNAME]\n  Path: /Workspace/Users/[USERNAME]/.bundle/pipeline-testing-disabled/default\n\nFound 1 warning\n\nUnexpected success\n\nExit code: 1\n"
        	            	
        	            	Diff:
        	            	--- Expected
        	            	+++ Actual
        	            	@@ -2,5 +2,5 @@
        	            	 >>> musterr [CLI] bundle validate
        	            	-Error: the testing property of pipelines is experimental. Set DATABRICKS_BUNDLE_ENABLE_EXPERIMENTAL_PIPELINE_TESTING=true to enable it
        	            	-  at resources.pipelines.orders.testing
        	            	-  in databricks.yml:9:9
        	            	+Warning: unknown field: testing
        	            	+  at resources.pipelines.orders
        	            	+  in databricks.yml:8:7
        	            	 
        	            	@@ -8,4 +8,11 @@
        	            	 Target: default
        	            	+Workspace:
        	            	+  User: [USERNAME]
        	            	+  Path: /Workspace/Users/[USERNAME]/.bundle/pipeline-testing-disabled/default
        	            	 
        	            	-Found 1 error
        	            	+Found 1 warning
        	            	 
        	            	+Unexpected success
        	            	+
        	            	+Exit code: 1
        	            	+
        	Test:       	TestAccept/bundle/resources/pipelines/testing-disabled/DMS=true
        	Messages:   	bundle/resources/pipelines/testing-disabled/output.txt vs /tmp/TestAcceptbundleresourcespipelinestesting-disabledDMS=true3695849202/002/output.txt
    acceptance_test.go:1135: Test produced unexpected files:
        .databricks/.gitignore

latest (v1.25.0): same output as main (b694c4c)

TestAccept/bundle/resources/pipelines/testing-same-name-libraries/DMS=: branch ✅ | main (b694c4c) ❌ | latest (v1.25.0) ❌

main (b694c4c):

acceptance_test.go:1345: 
        	Error Trace:	/home/runner/work/cli/cli/libs/testdiff/testdiff.go:22
        	            				/home/runner/work/cli/cli/acceptance/acceptance_test.go:1345
        	            				/home/runner/work/cli/cli/acceptance/acceptance_test.go:1086
        	            				/home/runner/work/cli/cli/acceptance/acceptance_test.go:660
        	Error:      	Not equal: 
        	            	expected: "\n>>> errcode [CLI] bundle deploy\nError: Duplicate local library names: test_helpers-0.1-py3-none-any.whl\n  at resources.pipelines.orders.environment.dependencies[0]\n     resources.pipelines.orders.testing.environment.dependencies[0]\n  in databricks.yml:13:13\n     databricks.yml:21:15\n\nLocal library names must be unique but found libraries with the same name: pipeline/test_helpers-0.1-py3-none-any.whl, tests/test_helpers-0.1-py3-none-any.whl\n\n\nExit code: 1\n"
        	            	actual  : "\n>>> errcode [CLI] bundle deploy\nWarning: unknown field: testing\n  at resources.pipelines.orders\n  in databricks.yml:14:7\n\nUploading pipeline/test_helpers-0.1-py3-none-any.whl...\nUploading bundle files to /Workspace/Users/[USERNAME]/.bundle/pipeline-testing-same-name-libraries/default/files...\nCreated pipelines.orders\nFiles: 5 uploaded, 0 deleted\nResources: 1 created, 0 changed, 0 deleted, 0 unchanged\n"
        	            	
        	            	Diff:
        	            	--- Expected
        	            	+++ Actual
        	            	@@ -2,12 +2,11 @@
        	            	 >>> errcode [CLI] bundle deploy
        	            	-Error: Duplicate local library names: test_helpers-0.1-py3-none-any.whl
        	            	-  at resources.pipelines.orders.environment.dependencies[0]
        	            	-     resources.pipelines.orders.testing.environment.dependencies[0]
        	            	-  in databricks.yml:13:13
        	            	-     databricks.yml:21:15
        	            	+Warning: unknown field: testing
        	            	+  at resources.pipelines.orders
        	            	+  in databricks.yml:14:7
        	            	 
        	            	-Local library names must be unique but found libraries with the same name: pipeline/test_helpers-0.1-py3-none-any.whl, tests/test_helpers-0.1-py3-none-any.whl
        	            	+Uploading pipeline/test_helpers-0.1-py3-none-any.whl...
        	            	+Uploading bundle files to /Workspace/Users/[USERNAME]/.bundle/pipeline-testing-same-name-libraries/default/files...
        	            	+Created pipelines.orders
        	            	+Files: 5 uploaded, 0 deleted
        	            	+Resources: 1 created, 0 changed, 0 deleted, 0 unchanged
        	            	 
        	            	-
        	            	-Exit code: 1
        	            	-
        	Test:       	TestAccept/bundle/resources/pipelines/testing-same-name-libraries/DMS=
        	Messages:   	bundle/resources/pipelines/testing-same-name-libraries/output.txt vs /tmp/TestAcceptbundleresourcespipelinestesting-same-name-librarie3513654583/002/output.txt

latest (v1.25.0): same output as main (b694c4c)

TestAccept/bundle/resources/pipelines/testing-same-name-libraries/DMS=true: branch ✅ | main (b694c4c) ❌ | latest (v1.25.0) ❌

main (b694c4c):

acceptance_test.go:1345: 
        	Error Trace:	/home/runner/work/cli/cli/libs/testdiff/testdiff.go:22
        	            				/home/runner/work/cli/cli/acceptance/acceptance_test.go:1345
        	            				/home/runner/work/cli/cli/acceptance/acceptance_test.go:1086
        	            				/home/runner/work/cli/cli/acceptance/acceptance_test.go:660
        	Error:      	Not equal: 
        	            	expected: "\n>>> errcode [CLI] bundle deploy\nError: Duplicate local library names: test_helpers-0.1-py3-none-any.whl\n  at resources.pipelines.orders.environment.dependencies[0]\n     resources.pipelines.orders.testing.environment.dependencies[0]\n  in databricks.yml:13:13\n     databricks.yml:21:15\n\nLocal library names must be unique but found libraries with the same name: pipeline/test_helpers-0.1-py3-none-any.whl, tests/test_helpers-0.1-py3-none-any.whl\n\n\nExit code: 1\n"
        	            	actual  : "\n>>> errcode [CLI] bundle deploy\nWarning: unknown field: testing\n  at resources.pipelines.orders\n  in databricks.yml:14:7\n\nUploading pipeline/test_helpers-0.1-py3-none-any.whl...\nUploading bundle files to /Workspace/Users/[USERNAME]/.bundle/pipeline-testing-same-name-libraries/default/files...\nCreated pipelines.orders\nFiles: 5 uploaded, 0 deleted\nResources: 1 created, 0 changed, 0 deleted, 0 unchanged\n"
        	            	
        	            	Diff:
        	            	--- Expected
        	            	+++ Actual
        	            	@@ -2,12 +2,11 @@
        	            	 >>> errcode [CLI] bundle deploy
        	            	-Error: Duplicate local library names: test_helpers-0.1-py3-none-any.whl
        	            	-  at resources.pipelines.orders.environment.dependencies[0]
        	            	-     resources.pipelines.orders.testing.environment.dependencies[0]
        	            	-  in databricks.yml:13:13
        	            	-     databricks.yml:21:15
        	            	+Warning: unknown field: testing
        	            	+  at resources.pipelines.orders
        	            	+  in databricks.yml:14:7
        	            	 
        	            	-Local library names must be unique but found libraries with the same name: pipeline/test_helpers-0.1-py3-none-any.whl, tests/test_helpers-0.1-py3-none-any.whl
        	            	+Uploading pipeline/test_helpers-0.1-py3-none-any.whl...
        	            	+Uploading bundle files to /Workspace/Users/[USERNAME]/.bundle/pipeline-testing-same-name-libraries/default/files...
        	            	+Created pipelines.orders
        	            	+Files: 5 uploaded, 0 deleted
        	            	+Resources: 1 created, 0 changed, 0 deleted, 0 unchanged
        	            	 
        	            	-
        	            	-Exit code: 1
        	            	-
        	Test:       	TestAccept/bundle/resources/pipelines/testing-same-name-libraries/DMS=true
        	Messages:   	bundle/resources/pipelines/testing-same-name-libraries/output.txt vs /tmp/TestAcceptbundleresourcespipelinestesting-same-name-librarie1777350949/002/output.txt

latest (v1.25.0): same output as main (b694c4c)

TestAccept/bundle/resources/pipelines/testing/DMS=: branch ✅ | main (b694c4c) ❌ | latest (v1.25.0) ❌

main (b694c4c):

acceptance_test.go:1345: Diff:
        --- bundle/resources/pipelines/testing/output.txt
        +++ /tmp/TestAcceptbundleresourcespipelinestestingDMS=2743979546/002/output.txt
        @@ -1,25 +1,17 @@
         
         === Relative test paths resolve to the deployed workspace paths
         >>> [CLI] bundle validate -o json
        -{
        -  "environment": {
        -    "dependencies": [
        -      "--editable /Workspace/Users/[USERNAME]/.bundle/pipeline-testing/default/files[test]",
        -      "-r /Workspace/Users/[USERNAME]/.bundle/pipeline-testing/default/files/tests/requirements.txt",
        -      "./dist/*.whl"
        -    ]
        -  },
        -  "sources": [
        -    {
        -      "glob": {
        -        "include": "/Workspace/Users/[USERNAME]/.bundle/pipeline-testing/default/files/tests/**"
        -      }
        -    }
        -  ]
        -}
        +Warning: unknown field: testing
        +  at resources.pipelines.orders
        +  in databricks.yml:11:7
         
        +null
        +
         >>> [CLI] bundle deploy
        -Uploading dist/test_helpers-0.1-py3-none-any.whl...
        +Warning: unknown field: testing
        +  at resources.pipelines.orders
        +  in databricks.yml:11:7
        +
         Uploading bundle files to /Workspace/Users/[USERNAME]/.bundle/pipeline-testing/default/files...
         Created pipelines.orders
         Files: 5 uploaded, 0 deleted
        @@ -43,164 +33,73 @@
                 }
               }
             ],
        -    "name": "orders",
        -    "testing": {
        -      "sources": [
        -        {
        -          "glob": {
        -            "include": "/Workspace/Users/[USERNAME]/.bundle/pipeline-testing/default/files/tests/**"
        -          }
        -        }
        -      ],
        -      "environment": {
        -        "dependencies": [
        -          "--editable /Workspace/Users/[USERNAME]/.bundle/pipeline-testing/default/files[test]",
        -          "-r /Workspace/Users/[USERNAME]/.bundle/pipeline-testing/default/files/tests/requirements.txt",
        -          "/Workspace/Users/[USERNAME]/.bundle/pipeline-testing/default/artifacts/.internal/test_helpers-0.1-py3-none-any.whl"
        -        ]
        -      }
        -    }
        +    "name": "orders"
           }
         }
         
         === No changes after the deploy
         >>> [CLI] bundle plan
        +Warning: unknown field: testing
        +  at resources.pipelines.orders
        +  in databricks.yml:11:7
        +
         Plan: 0 to add, 0 to change, 0 to delete, 1 unchanged
         
         === A remote edit that drops testing shows in the plan
         >>> [CLI] bundle plan -o json
        -{
        -  "action": "update",
        -  "old": {
        -    "sources": [
        -      {
        -        "glob": {
        -          "include": "/Workspace/Users/[USERNAME]/.bundle/pipeline-testing/default/files/tests/**"
        -        }
        -      }
        -    ],
        -    "environment": {
        -      "dependencies": [
        -        "--editable /Workspace/Users/[USERNAME]/.bundle/pipeline-testing/default/files[test]",
        -        "-r /Workspace/Users/[USERNAME]/.bundle/pipeline-testing/default/files/tests/requirements.txt",
        -        "/Workspace/Users/[USERNAME]/.bundle/pipeline-testing/default/artifacts/.internal/test_helpers-0.1-py3-none-any.whl"
        -      ]
        -    }
        -  },
        -  "new": {
        -    "sources": [
        -      {
        -        "glob": {
        -          "include": "/Workspace/Users/[USERNAME]/.bundle/pipeline-testing/default/files/tests/**"
        -        }
        -      }
        -    ],
        -    "environment": {
        -      "dependencies": [
        -        "--editable /Workspace/Users/[USERNAME]/.bundle/pipeline-testing/default/files[test]",
        -        "-r /Workspace/Users/[USERNAME]/.bundle/pipeline-testing/default/files/tests/requirements.txt",
        -        "/Workspace/Users/[USERNAME]/.bundle/pipeline-testing/default/artifacts/.internal/test_helpers-0.1-py3-none-any.whl"
        -      ]
        -    }
        -  }
        -}
        +Warning: unknown field: testing
        +  at resources.pipelines.orders
        +  in databricks.yml:11:7
         
        +null
        +
         >>> [CLI] bundle deploy
        -Uploading dist/test_helpers-0.1-py3-none-any.whl...
        +Warning: unknown field: testing
        +  at resources.pipelines.orders
        +  in databricks.yml:11:7
        +
         Uploading bundle files to /Workspace/Users/[USERNAME]/.bundle/pipeline-testing/default/files...
        -Updated pipelines.orders
         Files: 1 uploaded, 0 deleted
        -Resources: 0 created, 1 changed, 0 deleted, 0 unchanged
        +Resources: 0 created, 0 changed, 0 deleted, 1 unchanged
         
         >>> [CLI] bundle plan
        +Warning: unknown field: testing
        +  at resources.pipelines.orders
        +  in databricks.yml:11:7
        +
         Plan: 0 to add, 0 to change, 0 to delete, 1 unchanged
         
         === Changing testing updates the pipeline
         >>> update_file.py databricks.yml ./tests/** ./tests/unit/**
         
         >>> [CLI] bundle plan
        -update pipelines.orders
        +Warning: unknown field: testing
        +  at resources.pipelines.orders
        +  in databricks.yml:11:7
         
        -Plan: 0 to add, 1 to change, 0 to delete, 0 unchanged
        +Plan: 0 to add, 0 to change, 0 to delete, 1 unchanged
         
         >>> [CLI] bundle deploy
        -Uploading dist/test_helpers-0.1-py3-none-any.whl...
        +Warning: unknown field: testing
        +  at resources.pipelines.orders
        +  in databricks.yml:11:7
        +
         Uploading bundle files to /Workspace/Users/[USERNAME]/.bundle/pipeline-testing/default/files...
        -Updated pipelines.orders
         Files: 1 uploaded, 0 deleted
        -Resources: 0 created, 1 changed, 0 deleted, 0 unchanged
        +Resources: 0 created, 0 changed, 0 deleted, 1 unchanged
         
         >>> print_requests.py //api/2.0/pipelines --nostamp
        -{
        -  "method": "PUT",
        -  "path": "/api/2.0/pipelines/[ORDERS_ID]",
        -  "body": {
        -    "channel": "CURRENT",
        -    "deployment": {
        -      "kind": "BUNDLE",
        -      "metadata_file_path": "/Workspace/Users/[USERNAME]/.bundle/pipeline-testing/default/state/metadata.json"
        -    },
        -    "edition": "ADVANCED",
        -    "libraries": [
        -      {
        -        "glob": {
        -          "include": "/Workspace/Users/[USERNAME]/.bundle/pipeline-testing/default/files/transformations/**"
        -        }
        -      }
        -    ],
        -    "name": "orders",
        -    "testing": {
        -      "sources": [
        -        {
        -          "glob": {
        -            "include": "/Workspace/Users/[USERNAME]/.bundle/pipeline-testing/default/files/tests/unit/**"
        -          }
        -        }
        -      ],
        -      "environment": {
        -        "dependencies": [
        -          "--editable /Workspace/Users/[USERNAME]/.bundle/pipeline-testing/default/files[test]",
        -          "-r /Workspace/Users/[USERNAME]/.bundle/pipeline-testing/default/files/tests/requirements.txt",
        -          "/Workspace/Users/[USERNAME]/.bundle/pipeline-testing/default/artifacts/.internal/test_helpers-0.1-py3-none-any.whl"
        -        ]
        -      }
        -    }
        -  }
        -}
         
         === Removing testing sends an update without it
         >>> [CLI] bundle plan
        -update pipelines.orders
        +Plan: 0 to add, 0 to change, 0 to delete, 1 unchanged
         
... (35 more lines truncated, raise DATABRICKS_CLI_TEST_MAX_LOG to see more)

latest (v1.25.0): same output as main (b694c4c)

TestAccept/bundle/resources/pipelines/testing/DMS=true: branch ✅ | main (b694c4c) ❌ | latest (v1.25.0) ❌

main (b694c4c):

acceptance_test.go:1345: Diff:
        --- bundle/resources/pipelines/testing/output.txt
        +++ /tmp/TestAcceptbundleresourcespipelinestestingDMS=true3083449680/002/output.txt
        @@ -1,25 +1,17 @@
         
         === Relative test paths resolve to the deployed workspace paths
         >>> [CLI] bundle validate -o json
        -{
        -  "environment": {
        -    "dependencies": [
        -      "--editable /Workspace/Users/[USERNAME]/.bundle/pipeline-testing/default/files[test]",
        -      "-r /Workspace/Users/[USERNAME]/.bundle/pipeline-testing/default/files/tests/requirements.txt",
        -      "./dist/*.whl"
        -    ]
        -  },
        -  "sources": [
        -    {
        -      "glob": {
        -        "include": "/Workspace/Users/[USERNAME]/.bundle/pipeline-testing/default/files/tests/**"
        -      }
        -    }
        -  ]
        -}
        +Warning: unknown field: testing
        +  at resources.pipelines.orders
        +  in databricks.yml:11:7
         
        +null
        +
         >>> [CLI] bundle deploy
        -Uploading dist/test_helpers-0.1-py3-none-any.whl...
        +Warning: unknown field: testing
        +  at resources.pipelines.orders
        +  in databricks.yml:11:7
        +
         Uploading bundle files to /Workspace/Users/[USERNAME]/.bundle/pipeline-testing/default/files...
         Created pipelines.orders
         Files: 5 uploaded, 0 deleted
        @@ -43,164 +33,73 @@
                 }
               }
             ],
        -    "name": "orders",
        -    "testing": {
        -      "sources": [
        -        {
        -          "glob": {
        -            "include": "/Workspace/Users/[USERNAME]/.bundle/pipeline-testing/default/files/tests/**"
        -          }
        -        }
        -      ],
        -      "environment": {
        -        "dependencies": [
        -          "--editable /Workspace/Users/[USERNAME]/.bundle/pipeline-testing/default/files[test]",
        -          "-r /Workspace/Users/[USERNAME]/.bundle/pipeline-testing/default/files/tests/requirements.txt",
        -          "/Workspace/Users/[USERNAME]/.bundle/pipeline-testing/default/artifacts/.internal/test_helpers-0.1-py3-none-any.whl"
        -        ]
        -      }
        -    }
        +    "name": "orders"
           }
         }
         
         === No changes after the deploy
         >>> [CLI] bundle plan
        +Warning: unknown field: testing
        +  at resources.pipelines.orders
        +  in databricks.yml:11:7
        +
         Plan: 0 to add, 0 to change, 0 to delete, 1 unchanged
         
         === A remote edit that drops testing shows in the plan
         >>> [CLI] bundle plan -o json
        -{
        -  "action": "update",
        -  "old": {
        -    "sources": [
        -      {
        -        "glob": {
        -          "include": "/Workspace/Users/[USERNAME]/.bundle/pipeline-testing/default/files/tests/**"
        -        }
        -      }
        -    ],
        -    "environment": {
        -      "dependencies": [
        -        "--editable /Workspace/Users/[USERNAME]/.bundle/pipeline-testing/default/files[test]",
        -        "-r /Workspace/Users/[USERNAME]/.bundle/pipeline-testing/default/files/tests/requirements.txt",
        -        "/Workspace/Users/[USERNAME]/.bundle/pipeline-testing/default/artifacts/.internal/test_helpers-0.1-py3-none-any.whl"
        -      ]
        -    }
        -  },
        -  "new": {
        -    "sources": [
        -      {
        -        "glob": {
        -          "include": "/Workspace/Users/[USERNAME]/.bundle/pipeline-testing/default/files/tests/**"
        -        }
        -      }
        -    ],
        -    "environment": {
        -      "dependencies": [
        -        "--editable /Workspace/Users/[USERNAME]/.bundle/pipeline-testing/default/files[test]",
        -        "-r /Workspace/Users/[USERNAME]/.bundle/pipeline-testing/default/files/tests/requirements.txt",
        -        "/Workspace/Users/[USERNAME]/.bundle/pipeline-testing/default/artifacts/.internal/test_helpers-0.1-py3-none-any.whl"
        -      ]
        -    }
        -  }
        -}
        +Warning: unknown field: testing
        +  at resources.pipelines.orders
        +  in databricks.yml:11:7
         
        +null
        +
         >>> [CLI] bundle deploy
        -Uploading dist/test_helpers-0.1-py3-none-any.whl...
        +Warning: unknown field: testing
        +  at resources.pipelines.orders
        +  in databricks.yml:11:7
        +
         Uploading bundle files to /Workspace/Users/[USERNAME]/.bundle/pipeline-testing/default/files...
        -Updated pipelines.orders
         Files: 1 uploaded, 0 deleted
        -Resources: 0 created, 1 changed, 0 deleted, 0 unchanged
        +Resources: 0 created, 0 changed, 0 deleted, 1 unchanged
         
         >>> [CLI] bundle plan
        +Warning: unknown field: testing
        +  at resources.pipelines.orders
        +  in databricks.yml:11:7
        +
         Plan: 0 to add, 0 to change, 0 to delete, 1 unchanged
         
         === Changing testing updates the pipeline
         >>> update_file.py databricks.yml ./tests/** ./tests/unit/**
         
         >>> [CLI] bundle plan
        -update pipelines.orders
        +Warning: unknown field: testing
        +  at resources.pipelines.orders
        +  in databricks.yml:11:7
         
        -Plan: 0 to add, 1 to change, 0 to delete, 0 unchanged
        +Plan: 0 to add, 0 to change, 0 to delete, 1 unchanged
         
         >>> [CLI] bundle deploy
        -Uploading dist/test_helpers-0.1-py3-none-any.whl...
        +Warning: unknown field: testing
        +  at resources.pipelines.orders
        +  in databricks.yml:11:7
        +
         Uploading bundle files to /Workspace/Users/[USERNAME]/.bundle/pipeline-testing/default/files...
        -Updated pipelines.orders
         Files: 1 uploaded, 0 deleted
        -Resources: 0 created, 1 changed, 0 deleted, 0 unchanged
        +Resources: 0 created, 0 changed, 0 deleted, 1 unchanged
         
         >>> print_requests.py //api/2.0/pipelines --nostamp
        -{
        -  "method": "PUT",
        -  "path": "/api/2.0/pipelines/[ORDERS_ID]",
        -  "body": {
        -    "channel": "CURRENT",
        -    "deployment": {
        -      "kind": "BUNDLE",
        -      "metadata_file_path": "/Workspace/Users/[USERNAME]/.bundle/pipeline-testing/default/state/metadata.json"
        -    },
        -    "edition": "ADVANCED",
        -    "libraries": [
        -      {
        -        "glob": {
        -          "include": "/Workspace/Users/[USERNAME]/.bundle/pipeline-testing/default/files/transformations/**"
        -        }
        -      }
        -    ],
        -    "name": "orders",
        -    "testing": {
        -      "sources": [
        -        {
        -          "glob": {
        -            "include": "/Workspace/Users/[USERNAME]/.bundle/pipeline-testing/default/files/tests/unit/**"
        -          }
        -        }
        -      ],
        -      "environment": {
        -        "dependencies": [
        -          "--editable /Workspace/Users/[USERNAME]/.bundle/pipeline-testing/default/files[test]",
        -          "-r /Workspace/Users/[USERNAME]/.bundle/pipeline-testing/default/files/tests/requirements.txt",
        -          "/Workspace/Users/[USERNAME]/.bundle/pipeline-testing/default/artifacts/.internal/test_helpers-0.1-py3-none-any.whl"
        -        ]
        -      }
        -    }
        -  }
        -}
         
         === Removing testing sends an update without it
         >>> [CLI] bundle plan
        -update pipelines.orders
        +Plan: 0 to add, 0 to change, 0 to delete, 1 unchanged
         
... (36 more lines truncated, raise DATABRICKS_CLI_TEST_MAX_LOG to see more)

latest (v1.25.0):

acceptance_test.go:1345: Diff:
        --- bundle/resources/pipelines/testing/output.txt
        +++ /tmp/TestAcceptbundleresourcespipelinestestingDMS=true322155078/002/output.txt
        @@ -1,25 +1,17 @@
         
         === Relative test paths resolve to the deployed workspace paths
         >>> [CLI] bundle validate -o json
        -{
        -  "environment": {
        -    "dependencies": [
        -      "--editable /Workspace/Users/[USERNAME]/.bundle/pipeline-testing/default/files[test]",
        -      "-r /Workspace/Users/[USERNAME]/.bundle/pipeline-testing/default/files/tests/requirements.txt",
        -      "./dist/*.whl"
        -    ]
        -  },
        -  "sources": [
        -    {
        -      "glob": {
        -        "include": "/Workspace/Users/[USERNAME]/.bundle/pipeline-testing/default/files/tests/**"
        -      }
        -    }
        -  ]
        -}
        +Warning: unknown field: testing
        +  at resources.pipelines.orders
        +  in databricks.yml:11:7
         
        +null
        +
         >>> [CLI] bundle deploy
        -Uploading dist/test_helpers-0.1-py3-none-any.whl...
        +Warning: unknown field: testing
        +  at resources.pipelines.orders
        +  in databricks.yml:11:7
        +
         Uploading bundle files to /Workspace/Users/[USERNAME]/.bundle/pipeline-testing/default/files...
         Created pipelines.orders
         Files: 5 uploaded, 0 deleted
        @@ -43,164 +33,73 @@
                 }
               }
             ],
        -    "name": "orders",
        -    "testing": {
        -      "sources": [
        -        {
        -          "glob": {
        -            "include": "/Workspace/Users/[USERNAME]/.bundle/pipeline-testing/default/files/tests/**"
        -          }
        -        }
        -      ],
        -      "environment": {
        -        "dependencies": [
        -          "--editable /Workspace/Users/[USERNAME]/.bundle/pipeline-testing/default/files[test]",
        -          "-r /Workspace/Users/[USERNAME]/.bundle/pipeline-testing/default/files/tests/requirements.txt",
        -          "/Workspace/Users/[USERNAME]/.bundle/pipeline-testing/default/artifacts/.internal/test_helpers-0.1-py3-none-any.whl"
        -        ]
        -      }
        -    }
        +    "name": "orders"
           }
         }
         
         === No changes after the deploy
         >>> [CLI] bundle plan
        +Warning: unknown field: testing
        +  at resources.pipelines.orders
        +  in databricks.yml:11:7
        +
         Plan: 0 to add, 0 to change, 0 to delete, 1 unchanged
         
         === A remote edit that drops testing shows in the plan
         >>> [CLI] bundle plan -o json
        -{
        -  "action": "update",
        -  "old": {
        -    "sources": [
        -      {
        -        "glob": {
        -          "include": "/Workspace/Users/[USERNAME]/.bundle/pipeline-testing/default/files/tests/**"
        -        }
        -      }
        -    ],
        -    "environment": {
        -      "dependencies": [
        -        "--editable /Workspace/Users/[USERNAME]/.bundle/pipeline-testing/default/files[test]",
        -        "-r /Workspace/Users/[USERNAME]/.bundle/pipeline-testing/default/files/tests/requirements.txt",
        -        "/Workspace/Users/[USERNAME]/.bundle/pipeline-testing/default/artifacts/.internal/test_helpers-0.1-py3-none-any.whl"
        -      ]
        -    }
        -  },
        -  "new": {
        -    "sources": [
        -      {
        -        "glob": {
        -          "include": "/Workspace/Users/[USERNAME]/.bundle/pipeline-testing/default/files/tests/**"
        -        }
        -      }
        -    ],
        -    "environment": {
        -      "dependencies": [
        -        "--editable /Workspace/Users/[USERNAME]/.bundle/pipeline-testing/default/files[test]",
        -        "-r /Workspace/Users/[USERNAME]/.bundle/pipeline-testing/default/files/tests/requirements.txt",
        -        "/Workspace/Users/[USERNAME]/.bundle/pipeline-testing/default/artifacts/.internal/test_helpers-0.1-py3-none-any.whl"
        -      ]
        -    }
        -  }
        -}
        +Warning: unknown field: testing
        +  at resources.pipelines.orders
        +  in databricks.yml:11:7
         
        +null
        +
         >>> [CLI] bundle deploy
        -Uploading dist/test_helpers-0.1-py3-none-any.whl...
        +Warning: unknown field: testing
        +  at resources.pipelines.orders
        +  in databricks.yml:11:7
        +
         Uploading bundle files to /Workspace/Users/[USERNAME]/.bundle/pipeline-testing/default/files...
        -Updated pipelines.orders
         Files: 1 uploaded, 0 deleted
        -Resources: 0 created, 1 changed, 0 deleted, 0 unchanged
        +Resources: 0 created, 0 changed, 0 deleted, 1 unchanged
         
         >>> [CLI] bundle plan
        +Warning: unknown field: testing
        +  at resources.pipelines.orders
        +  in databricks.yml:11:7
        +
         Plan: 0 to add, 0 to change, 0 to delete, 1 unchanged
         
         === Changing testing updates the pipeline
         >>> update_file.py databricks.yml ./tests/** ./tests/unit/**
         
         >>> [CLI] bundle plan
        -update pipelines.orders
        +Warning: unknown field: testing
        +  at resources.pipelines.orders
        +  in databricks.yml:11:7
         
        -Plan: 0 to add, 1 to change, 0 to delete, 0 unchanged
        +Plan: 0 to add, 0 to change, 0 to delete, 1 unchanged
         
         >>> [CLI] bundle deploy
        -Uploading dist/test_helpers-0.1-py3-none-any.whl...
        +Warning: unknown field: testing
        +  at resources.pipelines.orders
        +  in databricks.yml:11:7
        +
         Uploading bundle files to /Workspace/Users/[USERNAME]/.bundle/pipeline-testing/default/files...
        -Updated pipelines.orders
         Files: 1 uploaded, 0 deleted
        -Resources: 0 created, 1 changed, 0 deleted, 0 unchanged
        +Resources: 0 created, 0 changed, 0 deleted, 1 unchanged
         
         >>> print_requests.py //api/2.0/pipelines --nostamp
        -{
        -  "method": "PUT",
        -  "path": "/api/2.0/pipelines/[ORDERS_ID]",
        -  "body": {
        -    "channel": "CURRENT",
        -    "deployment": {
        -      "kind": "BUNDLE",
        -      "metadata_file_path": "/Workspace/Users/[USERNAME]/.bundle/pipeline-testing/default/state/metadata.json"
        -    },
        -    "edition": "ADVANCED",
        -    "libraries": [
        -      {
        -        "glob": {
        -          "include": "/Workspace/Users/[USERNAME]/.bundle/pipeline-testing/default/files/transformations/**"
        -        }
        -      }
        -    ],
        -    "name": "orders",
        -    "testing": {
        -      "sources": [
        -        {
        -          "glob": {
        -            "include": "/Workspace/Users/[USERNAME]/.bundle/pipeline-testing/default/files/tests/unit/**"
        -          }
        -        }
        -      ],
        -      "environment": {
        -        "dependencies": [
        -          "--editable /Workspace/Users/[USERNAME]/.bundle/pipeline-testing/default/files[test]",
        -          "-r /Workspace/Users/[USERNAME]/.bundle/pipeline-testing/default/files/tests/requirements.txt",
        -          "/Workspace/Users/[USERNAME]/.bundle/pipeline-testing/default/artifacts/.internal/test_helpers-0.1-py3-none-any.whl"
        -        ]
        -      }
        -    }
        -  }
        -}
         
         === Removing testing sends an update without it
         >>> [CLI] bundle plan
        -update pipelines.orders
        +Plan: 0 to add, 0 to change, 0 to delete, 1 unchanged
         
... (35 more lines truncated, raise DATABRICKS_CLI_TEST_MAX_LOG to see more)

@eng-dev-ecosystem-bot

Copy link
Copy Markdown
Collaborator

✅ Integration test report

Commit: 1b48966

Run: 42728495458

Env 🔄​flaky ✅​pass 🙈​skip Time
✅​ aws linux-2core-8gb 271 21 5:50
✅​ aws-windows-latest-4core-16gb 273 19 4:18
✅​ azure linux-2core-8gb 270 21 6:28
✅​ azure-windows-latest-4core-16gb 272 19 5:28
🔄​ gcp linux-2core-8gb 2 269 21 6:24
✅​ gcp-windows-latest-4core-16gb 273 19 5:49
Test Name gcp linux-2core-8gb
🔄​ TestFsCpFileToFileWithOverwriteFlag 🔄​f
🔄​ TestFsCpFileToFileWithOverwriteFlag/dbfs_to_dbfs 🔄​f
Top 3 slowest tests (at least 2 minutes):
duration env testname
3:15 gcp-windows-latest-4core-16gb TestAccept
3:11 azure-windows-latest-4core-16gb TestAccept
3:09 aws-windows-latest-4core-16gb TestAccept

@tharunbhuk-db
tharunbhuk-db force-pushed the tharun/pipelines-test-pr4-bundles branch 4 times, most recently from 08916f8 to 4c21f8b Compare November 10, 2026 17:22

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants