Skip to content

Deploy the testing property of pipelines and show remote changes in bundle plan - #7438

Draft
tharunbhuk-db wants to merge 1 commit into
tharun/pipelines-test-b3-testing-pathsfrom
tharun/pipelines-test-b4-testing-deploy
Draft

tharunbhuk-db wants to merge 1 commit into
tharun/pipelines-test-b3-testing-pathsfrom
tharun/pipelines-test-b4-testing-deploy

Conversation

@tharunbhuk-db

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

Copy link
Copy Markdown
Contributor

🥞 Stacked PR


  • bundle deploy sends testing, and bundle plan shows changes made to it outside the bundle. The calls are raw because the Go SDK does not have the field.
  • Pipelines without testing use the same SDK calls as before.
  • Checked on dogfood staging: existing pipelines and jobs show 0 changes, and removing testing clears it.

Tests: TestPipelineRawRequests, TestPipelineReadReturnsTesting; acceptance bundle/resources/pipelines/testing.

This pull request and its description were written by Isaac.

@github-actions

github-actions Bot commented Nov 10, 2026 •

Copy link
Copy Markdown
Contributor

Commit: 21262127a | Workflow run

Regression test report

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

8 tests: regression=8 unreleased=0 coverage=0 failing=0
test branch main (cec3f63) latest (v1.26.0)
TestAccept/bundle/environments/dependencies/DMS= ✅ ❌ ❌
TestAccept/bundle/environments/dependencies/DMS=true ✅ ❌ ❌
TestAccept/bundle/refschema/DMS= ✅ ❌ ❌
TestAccept/bundle/refschema/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/dependencies/DMS=: branch ✅ | main (cec3f63) ❌ | latest (v1.26.0) ❌

main (cec3f63):

acceptance_test.go:1345: Diff:
        --- bundle/environments/dependencies/output.txt
        +++ /tmp/TestAcceptbundleenvironmentsdependenciesDMS=3516238831/002/output.txt
        @@ -1,150 +1,13 @@
         
         >>> [CLI] bundle validate
        +Error: unable to determine if [TEST_TMP_DIR]/project is not a notebook: read [TEST_TMP_DIR]/project: is a directory
        +
         Name: dependencies
         Target: default
         Workspace:
           User: [USERNAME]
           Path: /Workspace/Users/[USERNAME]/.bundle/dependencies/default
         
        -Validation OK!
        +Found 1 error
         
        ->>> [CLI] bundle deploy
        -Uploading dist/test.whl...
        -Uploading bundle files to /Workspace/Users/[USERNAME]/.bundle/dependencies/default/files...
        -Created jobs.test_job
        -Created pipelines.test_pipeline
        -Files: 6 uploaded, 0 deleted
        -Resources: 2 created, 0 changed, 0 deleted, 0 unchanged
        -
        ->>> jq -s .[] | select(.path=="/api/2.2/jobs/create") | .body.environments [OUTPUT_DIR]/out.requests.txt
        -[
        -  {
        -    "environment_key": "test_env",
        -    "spec": {
        -      "client": "1",
        -      "dependencies": [
        -        "-r /Workspace/Users/[USERNAME]/.bundle/dependencies/default/files/requirements.txt",
        -        "-r \"/Workspace/Users/[USERNAME]/.bundle/dependencies/default/files/Path With Spaces/requirements.txt\"",
        -        "-r '/Workspace/Users/[USERNAME]/.bundle/dependencies/default/files/Path With Spaces/requirements.txt'",
        -        "-e /Workspace/Users/[USERNAME]/.bundle/dependencies/default/files/file.py",
        -        "-e /Workspace/Users/[USERNAME]/.bundle/dependencies/default/files/project",
        -        "-e /Workspace/Users/[USERNAME]/.bundle/dependencies/default/files/project[test]",
        -        "-i http://myindexurl.com",
        -        "--index-url http://myindexurl.com",
        -        "test_package",
        -        "test_package==2.0.1",
        -        "test_package>=2.0.1",
        -        "test_package==2.0.*",
        -        "/Workspace/Users/[USERNAME]/.bundle/dependencies/default/artifacts/.internal/test.whl",
        -        "/Workspace/Users/test@databricks.com/test-package.whl",
        -        "beautifulsoup4>=1.0.0,~=1.2.0,<2.0.0",
        -        "beautifulsoup4[security, tests] ~= 4.12.3",
        -        "requests[security] @ https://github.com/psf/requests/archive/refs/heads/main.zip",
        -        "--find-links=/Workspace/Users/test"
        -      ]
        -    }
        -  },
        -  {
        -    "environment_key": "test_env_2",
        -    "spec": {
        -      "client": "1",
        -      "dependencies": [
        -        "-r /Workspace/Users/[USERNAME]/.bundle/dependencies/default/files/requirements.txt"
        -      ]
        -    }
        -  }
        -]
        -
        ->>> jq -s .[] | select(.path=="/api/2.0/pipelines") [OUTPUT_DIR]/out.requests.txt
        -{
        -  "method": "POST",
        -  "path": "/api/2.0/pipelines",
        -  "body": {
        -    "channel": "CURRENT",
        -    "deployment": {
        -      "kind": "BUNDLE",
        -      "metadata_file_path": "/Workspace/Users/[USERNAME]/.bundle/dependencies/default/state/metadata.json"
        -    },
        -    "edition": "ADVANCED",
        -    "environment": {
        -      "dependencies": [
        -        "-r /Workspace/Users/[USERNAME]/.bundle/dependencies/default/files/requirements.txt",
        -        "-e /Workspace/Users/[USERNAME]/.bundle/dependencies/default/files/file.py",
        -        "-e /Workspace/Users/[USERNAME]/.bundle/dependencies/default/files/project",
        -        "-e /Workspace/Users/[USERNAME]/.bundle/dependencies/default/files/project[test]",
        -        "-i http://myindexurl.com",
        -        "--index-url http://myindexurl.com",
        -        "/Workspace/Users/[USERNAME]/.bundle/dependencies/default/artifacts/.internal/test.whl",
        -        "/Workspace/Users/test@databricks.com/test-package.whl",
        -        "test_package",
        -        "test_package==2.0.1",
        -        "test_package>=2.0.1",
        -        "test_package==2.0.*",
        -        "beautifulsoup4>=1.0.0,~=1.2.0,<2.0.0",
        -        "requests[security] @ https://github.com/psf/requests/archive/refs/heads/main.zip",
        -        "--find-links=/Workspace/Users/test"
        -      ]
        -    },
        -    "name": "Test Pipeline"
        -  }
        -}
        -
        ->>> [CLI] bundle validate -o json
        -[
        -  {
        -    "environment_key": "test_env",
        -    "spec": {
        -      "client": "1",
        -      "dependencies": [
        -        "-r /Workspace/Users/[USERNAME]/.bundle/dependencies/default/files/requirements.txt",
        -        "-r \"/Workspace/Users/[USERNAME]/.bundle/dependencies/default/files/Path With Spaces/requirements.txt\"",
        -        "-r '/Workspace/Users/[USERNAME]/.bundle/dependencies/default/files/Path With Spaces/requirements.txt'",
        -        "-e /Workspace/Users/[USERNAME]/.bundle/dependencies/default/files/file.py",
        -        "-e /Workspace/Users/[USERNAME]/.bundle/dependencies/default/files/project",
        -        "-e /Workspace/Users/[USERNAME]/.bundle/dependencies/default/files/project[test]",
        -        "-i http://myindexurl.com",
        -        "--index-url http://myindexurl.com",
        -        "test_package",
        -        "test_package==2.0.1",
        -        "test_package>=2.0.1",
        -        "test_package==2.0.*",
        -        "./dist/*.whl",
        -        "/Workspace/Users/test@databricks.com/test-package.whl",
        -        "beautifulsoup4>=1.0.0,~=1.2.0,<2.0.0",
        -        "beautifulsoup4[security, tests] ~= 4.12.3",
        -        "requests[security] @ https://github.com/psf/requests/archive/refs/heads/main.zip",
        -        "--find-links=/Workspace/Users/test"
        -      ]
        -    }
        -  },
        -  {
        -    "environment_key": "test_env_2",
        -    "spec": {
        -      "client": "1",
        -      "dependencies": [
        -        "-r /Workspace/Users/[USERNAME]/.bundle/dependencies/default/files/requirements.txt"
        -      ]
        -    }
        -  }
        -]
        -
        ->>> [CLI] bundle validate -o json
        -{
        -  "dependencies": [
        -    "-r /Workspace/Users/[USERNAME]/.bundle/dependencies/default/files/requirements.txt",
        -    "-e /Workspace/Users/[USERNAME]/.bundle/dependencies/default/files/file.py",
        -    "-e /Workspace/Users/[USERNAME]/.bundle/dependencies/default/files/project",
        -    "-e /Workspace/Users/[USERNAME]/.bundle/dependencies/default/files/project[test]",
        -    "-i http://myindexurl.com",
        -    "--index-url http://myindexurl.com",
        -    "./dist/*.whl",
        -    "/Workspace/Users/test@databricks.com/test-package.whl",
        -    "test_package",
        -    "test_package==2.0.1",
        -    "test_package>=2.0.1",
        -    "test_package==2.0.*",
        -    "beautifulsoup4>=1.0.0,~=1.2.0,<2.0.0",
        -    "requests[security] @ https://github.com/psf/requests/archive/refs/heads/main.zip",
        -    "--find-links=/Workspace/Users/test"
        -  ]
        -}
        +Exit code: 1

latest (v1.26.0): same output as main (cec3f63)

TestAccept/bundle/environments/dependencies/DMS=true: branch ✅ | main (cec3f63) ❌ | latest (v1.26.0) ❌

main (cec3f63):

acceptance_test.go:1345: Diff:
        --- bundle/environments/dependencies/output.txt
        +++ /tmp/TestAcceptbundleenvironmentsdependenciesDMS=true3271130234/002/output.txt
        @@ -1,150 +1,13 @@
         
         >>> [CLI] bundle validate
        +Error: unable to determine if [TEST_TMP_DIR]/project is not a notebook: read [TEST_TMP_DIR]/project: is a directory
        +
         Name: dependencies
         Target: default
         Workspace:
           User: [USERNAME]
           Path: /Workspace/Users/[USERNAME]/.bundle/dependencies/default
         
        -Validation OK!
        +Found 1 error
         
        ->>> [CLI] bundle deploy
        -Uploading dist/test.whl...
        -Uploading bundle files to /Workspace/Users/[USERNAME]/.bundle/dependencies/default/files...
        -Created jobs.test_job
        -Created pipelines.test_pipeline
        -Files: 6 uploaded, 0 deleted
        -Resources: 2 created, 0 changed, 0 deleted, 0 unchanged
        -
        ->>> jq -s .[] | select(.path=="/api/2.2/jobs/create") | .body.environments [OUTPUT_DIR]/out.requests.txt
        -[
        -  {
        -    "environment_key": "test_env",
        -    "spec": {
        -      "client": "1",
        -      "dependencies": [
        -        "-r /Workspace/Users/[USERNAME]/.bundle/dependencies/default/files/requirements.txt",
        -        "-r \"/Workspace/Users/[USERNAME]/.bundle/dependencies/default/files/Path With Spaces/requirements.txt\"",
        -        "-r '/Workspace/Users/[USERNAME]/.bundle/dependencies/default/files/Path With Spaces/requirements.txt'",
        -        "-e /Workspace/Users/[USERNAME]/.bundle/dependencies/default/files/file.py",
        -        "-e /Workspace/Users/[USERNAME]/.bundle/dependencies/default/files/project",
        -        "-e /Workspace/Users/[USERNAME]/.bundle/dependencies/default/files/project[test]",
        -        "-i http://myindexurl.com",
        -        "--index-url http://myindexurl.com",
        -        "test_package",
        -        "test_package==2.0.1",
        -        "test_package>=2.0.1",
        -        "test_package==2.0.*",
        -        "/Workspace/Users/[USERNAME]/.bundle/dependencies/default/artifacts/.internal/test.whl",
        -        "/Workspace/Users/test@databricks.com/test-package.whl",
        -        "beautifulsoup4>=1.0.0,~=1.2.0,<2.0.0",
        -        "beautifulsoup4[security, tests] ~= 4.12.3",
        -        "requests[security] @ https://github.com/psf/requests/archive/refs/heads/main.zip",
        -        "--find-links=/Workspace/Users/test"
        -      ]
        -    }
        -  },
        -  {
        -    "environment_key": "test_env_2",
        -    "spec": {
        -      "client": "1",
        -      "dependencies": [
        -        "-r /Workspace/Users/[USERNAME]/.bundle/dependencies/default/files/requirements.txt"
        -      ]
        -    }
        -  }
        -]
        -
        ->>> jq -s .[] | select(.path=="/api/2.0/pipelines") [OUTPUT_DIR]/out.requests.txt
        -{
        -  "method": "POST",
        -  "path": "/api/2.0/pipelines",
        -  "body": {
        -    "channel": "CURRENT",
        -    "deployment": {
        -      "kind": "BUNDLE",
        -      "metadata_file_path": "/Workspace/Users/[USERNAME]/.bundle/dependencies/default/state/metadata.json"
        -    },
        -    "edition": "ADVANCED",
        -    "environment": {
        -      "dependencies": [
        -        "-r /Workspace/Users/[USERNAME]/.bundle/dependencies/default/files/requirements.txt",
        -        "-e /Workspace/Users/[USERNAME]/.bundle/dependencies/default/files/file.py",
        -        "-e /Workspace/Users/[USERNAME]/.bundle/dependencies/default/files/project",
        -        "-e /Workspace/Users/[USERNAME]/.bundle/dependencies/default/files/project[test]",
        -        "-i http://myindexurl.com",
        -        "--index-url http://myindexurl.com",
        -        "/Workspace/Users/[USERNAME]/.bundle/dependencies/default/artifacts/.internal/test.whl",
        -        "/Workspace/Users/test@databricks.com/test-package.whl",
        -        "test_package",
        -        "test_package==2.0.1",
        -        "test_package>=2.0.1",
        -        "test_package==2.0.*",
        -        "beautifulsoup4>=1.0.0,~=1.2.0,<2.0.0",
        -        "requests[security] @ https://github.com/psf/requests/archive/refs/heads/main.zip",
        -        "--find-links=/Workspace/Users/test"
        -      ]
        -    },
        -    "name": "Test Pipeline"
        -  }
        -}
        -
        ->>> [CLI] bundle validate -o json
        -[
        -  {
        -    "environment_key": "test_env",
        -    "spec": {
        -      "client": "1",
        -      "dependencies": [
        -        "-r /Workspace/Users/[USERNAME]/.bundle/dependencies/default/files/requirements.txt",
        -        "-r \"/Workspace/Users/[USERNAME]/.bundle/dependencies/default/files/Path With Spaces/requirements.txt\"",
        -        "-r '/Workspace/Users/[USERNAME]/.bundle/dependencies/default/files/Path With Spaces/requirements.txt'",
        -        "-e /Workspace/Users/[USERNAME]/.bundle/dependencies/default/files/file.py",
        -        "-e /Workspace/Users/[USERNAME]/.bundle/dependencies/default/files/project",
        -        "-e /Workspace/Users/[USERNAME]/.bundle/dependencies/default/files/project[test]",
        -        "-i http://myindexurl.com",
        -        "--index-url http://myindexurl.com",
        -        "test_package",
        -        "test_package==2.0.1",
        -        "test_package>=2.0.1",
        -        "test_package==2.0.*",
        -        "./dist/*.whl",
        -        "/Workspace/Users/test@databricks.com/test-package.whl",
        -        "beautifulsoup4>=1.0.0,~=1.2.0,<2.0.0",
        -        "beautifulsoup4[security, tests] ~= 4.12.3",
        -        "requests[security] @ https://github.com/psf/requests/archive/refs/heads/main.zip",
        -        "--find-links=/Workspace/Users/test"
        -      ]
        -    }
        -  },
        -  {
        -    "environment_key": "test_env_2",
        -    "spec": {
        -      "client": "1",
        -      "dependencies": [
        -        "-r /Workspace/Users/[USERNAME]/.bundle/dependencies/default/files/requirements.txt"
        -      ]
        -    }
        -  }
        -]
        -
        ->>> [CLI] bundle validate -o json
        -{
        -  "dependencies": [
        -    "-r /Workspace/Users/[USERNAME]/.bundle/dependencies/default/files/requirements.txt",
        -    "-e /Workspace/Users/[USERNAME]/.bundle/dependencies/default/files/file.py",
        -    "-e /Workspace/Users/[USERNAME]/.bundle/dependencies/default/files/project",
        -    "-e /Workspace/Users/[USERNAME]/.bundle/dependencies/default/files/project[test]",
        -    "-i http://myindexurl.com",
        -    "--index-url http://myindexurl.com",
        -    "./dist/*.whl",
        -    "/Workspace/Users/test@databricks.com/test-package.whl",
        -    "test_package",
        -    "test_package==2.0.1",
        -    "test_package>=2.0.1",
        -    "test_package==2.0.*",
        -    "beautifulsoup4>=1.0.0,~=1.2.0,<2.0.0",
        -    "requests[security] @ https://github.com/psf/requests/archive/refs/heads/main.zip",
        -    "--find-links=/Workspace/Users/test"
        -  ]
        -}
        +Exit code: 1

latest (v1.26.0): same output as main (cec3f63)

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

main (cec3f63):

acceptance_test.go:1345: Diff:
        --- bundle/refschema/output/pipelines.txt
        +++ /tmp/TestAcceptbundlerefschemaDMS=434293226/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.26.0):

acceptance_test.go:1345: Diff:
        --- bundle/refschema/output/catalogs.txt
        +++ /tmp/TestAcceptbundlerefschemaDMS=167394933/001/output/catalogs.txt
        @@ -12,7 +12,7 @@
         resources.catalogs.*.enable_predictive_optimization	catalog.EnablePredictiveOptimization	REMOTE
         resources.catalogs.*.full_name	string	REMOTE
         resources.catalogs.*.id	string	INPUT
        -resources.catalogs.*.isolation_mode	catalog.CatalogIsolationMode	ALL
        +resources.catalogs.*.isolation_mode	catalog.CatalogIsolationMode	REMOTE
         resources.catalogs.*.lifecycle	resources.Lifecycle	INPUT
         resources.catalogs.*.lifecycle.depends_on	[]resources.DependsOn	INPUT
         resources.catalogs.*.lifecycle.depends_on[*]	resources.DependsOn	INPUT
        
    acceptance_test.go:1345: Diff:
        --- bundle/refschema/output/pipelines.txt
        +++ /tmp/TestAcceptbundlerefschemaDMS=167394933/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
TestAccept/bundle/refschema/DMS=true: branch ✅ | main (cec3f63) ❌ | latest (v1.26.0) ❌

main (cec3f63):

acceptance_test.go:1345: Diff:
        --- bundle/refschema/output/pipelines.txt
        +++ /tmp/TestAcceptbundlerefschemaDMS=true2775568989/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

latest (v1.26.0):

acceptance_test.go:1345: Diff:
        --- bundle/refschema/output/catalogs.txt
        +++ /tmp/TestAcceptbundlerefschemaDMS=true3818687553/001/output/catalogs.txt
        @@ -12,7 +12,7 @@
         resources.catalogs.*.enable_predictive_optimization	catalog.EnablePredictiveOptimization	REMOTE
         resources.catalogs.*.full_name	string	REMOTE
         resources.catalogs.*.id	string	INPUT
        -resources.catalogs.*.isolation_mode	catalog.CatalogIsolationMode	ALL
        +resources.catalogs.*.isolation_mode	catalog.CatalogIsolationMode	REMOTE
         resources.catalogs.*.lifecycle	resources.Lifecycle	INPUT
         resources.catalogs.*.lifecycle.depends_on	[]resources.DependsOn	INPUT
         resources.catalogs.*.lifecycle.depends_on[*]	resources.DependsOn	INPUT
        
    acceptance_test.go:1345: Diff:
        --- bundle/refschema/output/pipelines.txt
        +++ /tmp/TestAcceptbundlerefschemaDMS=true3818687553/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
TestAccept/bundle/resources/pipelines/testing-same-name-libraries/DMS=: branch ✅ | main (cec3f63) ❌ | latest (v1.26.0) ❌

main (cec3f63):

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 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"
        	            	actual  : "\n>>> musterr [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\nUnexpected success\n\nExit code: 1\n"
        	            	
        	            	Diff:
        	            	--- Expected
        	            	+++ Actual
        	            	@@ -2,10 +2,15 @@
        	            	 >>> musterr [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
        	            	 
        	            	+Unexpected success
        	            	 
        	            	+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-librarie2631059089/002/output.txt
    acceptance_test.go:1135: Test produced unexpected files:
        .databricks/.gitignore
        .databricks/bundle/default/deployment.json
        .databricks/bundle/default/resources.json
        .databricks/bundle/default/sync-snapshots/34bd90f51bb410c2.json

latest (v1.26.0):

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 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"
        	            	actual  : "\n>>> musterr [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\nUnexpected success\n\nExit code: 1\n"
        	            	
        	            	Diff:
        	            	--- Expected
        	            	+++ Actual
        	            	@@ -2,10 +2,15 @@
        	            	 >>> musterr [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
        	            	 
        	            	+Unexpected success
        	            	 
        	            	+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-librarie2855531354/002/output.txt
    acceptance_test.go:1135: Test produced unexpected files:
        .databricks/.gitignore
        .databricks/bundle/default/deployment.json
        .databricks/bundle/default/resources.json
        .databricks/bundle/default/sync-snapshots/0d24fc81b2200289.json
TestAccept/bundle/resources/pipelines/testing-same-name-libraries/DMS=true: branch ✅ | main (cec3f63) ❌ | latest (v1.26.0) ❌

main (cec3f63):

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 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"
        	            	actual  : "\n>>> musterr [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\nUnexpected success\n\nExit code: 1\n"
        	            	
        	            	Diff:
        	            	--- Expected
        	            	+++ Actual
        	            	@@ -2,10 +2,15 @@
        	            	 >>> musterr [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
        	            	 
        	            	+Unexpected success
        	            	 
        	            	+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-librarie3005118890/002/output.txt
    acceptance_test.go:1135: Test produced unexpected files:
        .databricks/.gitignore
        .databricks/bundle/default/deployment.json
        .databricks/bundle/default/resources.json
        .databricks/bundle/default/sync-snapshots/140e869868bca0f2.json

latest (v1.26.0):

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 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"
        	            	actual  : "\n>>> musterr [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\nUnexpected success\n\nExit code: 1\n"
        	            	
        	            	Diff:
        	            	--- Expected
        	            	+++ Actual
        	            	@@ -2,10 +2,15 @@
        	            	 >>> musterr [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
        	            	 
        	            	+Unexpected success
        	            	 
        	            	+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-librarie2445711797/002/output.txt
    acceptance_test.go:1135: Test produced unexpected files:
        .databricks/.gitignore
        .databricks/bundle/default/deployment.json
        .databricks/bundle/default/resources.json
        .databricks/bundle/default/sync-snapshots/4594dc44518481f5.json
FAIL
TestAccept/bundle/resources/pipelines/testing/DMS=: branch ✅ | main (cec3f63) ❌ | latest (v1.26.0) ❌

main (cec3f63):

acceptance_test.go:1345: Diff:
        --- bundle/resources/pipelines/testing/output.txt
        +++ /tmp/TestAcceptbundleresourcespipelinestestingDMS=660824019/002/output.txt
        @@ -2,29 +2,18 @@
         === Relative test paths resolve to the deployed workspace paths
         
         >>> [CLI] bundle validate -o json
        -{
        -  "environment": {
        -    "dependencies": [
        -      "-e /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
        +
         === Without pipeline testing, the property is an error
         
         >>> musterr env -u DATABRICKS_BUNDLE_ENABLE_EXPERIMENTAL_PIPELINE_TESTING [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:12:9
        +Warning: unknown field: testing
        +  at resources.pipelines.orders
        +  in databricks.yml:11:7
         
         Name: pipeline-testing
         Target: default
        @@ -32,116 +17,8 @@
           User: [USERNAME]
           Path: /Workspace/Users/[USERNAME]/.bundle/pipeline-testing/default
         
        -Found 1 error
        +Found 1 warning
         
        -=== Deploy sends testing, with the local wheel uploaded
        +Unexpected success
         
        ->>> [CLI] bundle deploy
        -Uploading dist/test_helpers-0.1-py3-none-any.whl...
        -Uploading bundle files to /Workspace/Users/[USERNAME]/.bundle/pipeline-testing/default/files...
        -Created pipelines.orders
        -Files: 6 uploaded, 0 deleted
        -Resources: 1 created, 0 changed, 0 deleted, 0 unchanged
        -
        ->>> print_requests.py //api/2.0/pipelines --nostamp
        -{
        -  "method": "POST",
        -  "path": "/api/2.0/pipelines",
        -  "testing": {
        -    "sources": [
        -      {
        -        "glob": {
        -          "include": "/Workspace/Users/[USERNAME]/.bundle/pipeline-testing/default/files/tests/**"
        -        }
        -      }
        -    ],
        -    "environment": {
        -      "dependencies": [
        -        "-e /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"
        -      ]
        -    }
        -  }
        -}
        -
        -=== No changes after the deploy
        -
        ->>> [CLI] bundle plan
        -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
        -"update"
        -
        ->>> [CLI] bundle deploy
        -Uploading dist/test_helpers-0.1-py3-none-any.whl...
        -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
        -
        ->>> [CLI] bundle plan
        -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
        -
        -Plan: 0 to add, 1 to change, 0 to delete, 0 unchanged
        -
        ->>> [CLI] bundle deploy
        -Uploading dist/test_helpers-0.1-py3-none-any.whl...
        -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
        -
        ->>> print_requests.py //api/2.0/pipelines --nostamp
        -{
        -  "method": "PUT",
        -  "path": "/api/2.0/pipelines/[ORDERS_ID]",
        -  "sources": [
        -    {
        -      "glob": {
        -        "include": "/Workspace/Users/[USERNAME]/.bundle/pipeline-testing/default/files/tests/unit/**"
        -      }
        -    }
        -  ]
        -}
        -
        -=== Removing testing sends an update without it
        -
        ->>> [CLI] bundle plan
        -update pipelines.orders
        -
        -Plan: 0 to add, 1 to change, 0 to delete, 0 unchanged
        -
        ->>> [CLI] bundle deploy
        -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
        -
        ->>> print_requests.py //api/2.0/pipelines --nostamp
        -{
        -  "method": "PUT",
        -  "path": "/api/2.0/pipelines/[ORDERS_ID]",
        -  "testing": null
        -}
        -
        ->>> [CLI] bundle destroy --auto-approve
        -The following resources will be deleted:
        -  delete resources.pipelines.orders
        -
        -This action will result in the deletion of the following Lakeflow Spark Declarative Pipelines along with the
        -Streaming Tables (STs) and Materialized Views (MVs) managed by them. Set 'cascade_on_destroy: false' on a pipeline to retain datasets on pipeline deletion:
        -  delete resources.pipelines.orders
        -
        -All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/pipeline-testing/default
        -
        -Destroy: 1 deleted
        +Exit code: 1

latest (v1.26.0): same output as main (cec3f63)

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

main (cec3f63):

acceptance_test.go:1345: Diff:
        --- bundle/resources/pipelines/testing/output.txt
        +++ /tmp/TestAcceptbundleresourcespipelinestestingDMS=true2805312052/002/output.txt
        @@ -2,29 +2,18 @@
         === Relative test paths resolve to the deployed workspace paths
         
         >>> [CLI] bundle validate -o json
        -{
        -  "environment": {
        -    "dependencies": [
        -      "-e /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
        +
         === Without pipeline testing, the property is an error
         
         >>> musterr env -u DATABRICKS_BUNDLE_ENABLE_EXPERIMENTAL_PIPELINE_TESTING [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:12:9
        +Warning: unknown field: testing
        +  at resources.pipelines.orders
        +  in databricks.yml:11:7
         
         Name: pipeline-testing
         Target: default
        @@ -32,116 +17,8 @@
           User: [USERNAME]
           Path: /Workspace/Users/[USERNAME]/.bundle/pipeline-testing/default
         
        -Found 1 error
        +Found 1 warning
         
        -=== Deploy sends testing, with the local wheel uploaded
        +Unexpected success
         
        ->>> [CLI] bundle deploy
        -Uploading dist/test_helpers-0.1-py3-none-any.whl...
        -Uploading bundle files to /Workspace/Users/[USERNAME]/.bundle/pipeline-testing/default/files...
        -Created pipelines.orders
        -Files: 6 uploaded, 0 deleted
        -Resources: 1 created, 0 changed, 0 deleted, 0 unchanged
        -
        ->>> print_requests.py //api/2.0/pipelines --nostamp
        -{
        -  "method": "POST",
        -  "path": "/api/2.0/pipelines",
        -  "testing": {
        -    "sources": [
        -      {
        -        "glob": {
        -          "include": "/Workspace/Users/[USERNAME]/.bundle/pipeline-testing/default/files/tests/**"
        -        }
        -      }
        -    ],
        -    "environment": {
        -      "dependencies": [
        -        "-e /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"
        -      ]
        -    }
        -  }
        -}
        -
        -=== No changes after the deploy
        -
        ->>> [CLI] bundle plan
        -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
        -"update"
        -
        ->>> [CLI] bundle deploy
        -Uploading dist/test_helpers-0.1-py3-none-any.whl...
        -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
        -
        ->>> [CLI] bundle plan
        -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
        -
        -Plan: 0 to add, 1 to change, 0 to delete, 0 unchanged
        -
        ->>> [CLI] bundle deploy
        -Uploading dist/test_helpers-0.1-py3-none-any.whl...
        -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
        -
        ->>> print_requests.py //api/2.0/pipelines --nostamp
        -{
        -  "method": "PUT",
        -  "path": "/api/2.0/pipelines/[ORDERS_ID]",
        -  "sources": [
        -    {
        -      "glob": {
        -        "include": "/Workspace/Users/[USERNAME]/.bundle/pipeline-testing/default/files/tests/unit/**"
        -      }
        -    }
        -  ]
        -}
        -
        -=== Removing testing sends an update without it
        -
        ->>> [CLI] bundle plan
        -update pipelines.orders
        -
        -Plan: 0 to add, 1 to change, 0 to delete, 0 unchanged
        -
        ->>> [CLI] bundle deploy
        -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
        -
        ->>> print_requests.py //api/2.0/pipelines --nostamp
        -{
        -  "method": "PUT",
        -  "path": "/api/2.0/pipelines/[ORDERS_ID]",
        -  "testing": null
        -}
        -
        ->>> [CLI] bundle destroy --auto-approve
        -The following resources will be deleted:
        -  delete resources.pipelines.orders
        -
        -This action will result in the deletion of the following Lakeflow Spark Declarative Pipelines along with the
        -Streaming Tables (STs) and Materialized Views (MVs) managed by them. Set 'cascade_on_destroy: false' on a pipeline to retain datasets on pipeline deletion:
        -  delete resources.pipelines.orders
        -
        -All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/pipeline-testing/default
        -
        -Destroy: 1 deleted
        +Exit code: 1

latest (v1.26.0): same output as main (cec3f63)

@eng-dev-ecosystem-bot

eng-dev-ecosystem-bot commented Nov 10, 2026 •

Copy link
Copy Markdown
Collaborator

✅ Integration test report

Commit: 2126212

Run: 43108379021

Env 🔄​flaky 💚​RECOVERED ✅​pass 🙈​skip Time
🔄​ aws linux-2core-8gb 2 1 268 19 9:11
🔄​ aws-windows-latest-4core-16gb 2 1 270 17 6:45
💚​ azure linux-2core-8gb 1 269 19 8:17
💚​ azure-windows-latest-4core-16gb 1 271 17 6:30
🔄​ gcp linux-2core-8gb 1 1 269 19 10:26
💚​ gcp-windows-latest-4core-16gb 1 272 17 7:13
6 interesting tests: 5 flaky, 1 RECOVERED
Test Name aws linux-2core-8gb aws-windows-latest-4core-16gb azure linux-2core-8gb azure-windows-latest-4core-16gb gcp linux-2core-8gb gcp-windows-latest-4core-16gb
💚​ TestAccept 💚​R 💚​R 💚​R 💚​R 💚​R 💚​R
🔄​ TestSyncIncrementalFileOverwritesFolder ✅​p ✅​p ✅​p ✅​p 🔄​f ✅​p
🔄​ TestFilerReadWrite ✅​p 🔄​f ✅​p ✅​p ✅​p ✅​p
🔄​ TestFilerReadWrite/dbfs ✅​p 🔄​f ✅​p ✅​p ✅​p ✅​p
🔄​ TestFilerRecursiveDelete 🔄​f ✅​p ✅​p ✅​p ✅​p ✅​p
🔄​ TestFilerRecursiveDelete/files 🔄​f ✅​p ✅​p ✅​p ✅​p ✅​p
Top 6 slowest tests (at least 2 minutes):
duration env testname
3:51 aws linux-2core-8gb TestAccept
3:48 gcp linux-2core-8gb TestAccept
3:38 gcp-windows-latest-4core-16gb TestAccept
3:36 aws-windows-latest-4core-16gb TestAccept
3:29 azure-windows-latest-4core-16gb TestAccept
3:14 azure linux-2core-8gb TestAccept

@tharunbhuk-db
tharunbhuk-db force-pushed the tharun/pipelines-test-b3-testing-paths branch from 48e4a95 to fd9fedb Compare November 10, 2026 10:46
@tharunbhuk-db
tharunbhuk-db force-pushed the tharun/pipelines-test-b4-testing-deploy branch from 1fd5e11 to 3af4a58 Compare November 10, 2026 10:46
@tharunbhuk-db
tharunbhuk-db force-pushed the tharun/pipelines-test-b3-testing-paths branch from fd9fedb to b10a21e Compare November 10, 2026 16:49
@tharunbhuk-db
tharunbhuk-db force-pushed the tharun/pipelines-test-b4-testing-deploy branch from 3af4a58 to 7498e1b Compare November 10, 2026 16:49
@tharunbhuk-db
tharunbhuk-db force-pushed the tharun/pipelines-test-b3-testing-paths branch from b10a21e to e5ff44c Compare November 10, 2026 17:22
@tharunbhuk-db
tharunbhuk-db force-pushed the tharun/pipelines-test-b4-testing-deploy branch from 7498e1b to e79333b Compare November 10, 2026 17:22
@tharunbhuk-db
tharunbhuk-db marked this pull request as ready for review November 10, 2026 18:08
@tharunbhuk-db
tharunbhuk-db requested review from a team as code owners November 10, 2026 18:08
@tharunbhuk-db
tharunbhuk-db requested review from anton-107 and removed request for a team and anton-107 November 10, 2026 18:08

@pranshupand-db pranshupand-db left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM. The summary and notes for the stack are on #7300: #7300

trace print_requests.py //api/2.0/pipelines --nostamp | jq '{method, path, testing: .body.testing}'

title "No changes after the deploy\n"
trace $CLI bundle plan

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just to double check: on dogfood, did bundle plan show 0 changes right after deploying a pipeline with testing? The description covers existing pipelines and removing it, but the fake server echoes the body back, so it can't tell us whether the backend normalizes glob.include or the -e /Workspace/...[test] dependency on read.

}

func (r *ResourcePipeline) DoRead(ctx context.Context, id string) (*PipelineRemote, error) {
if env.ExperimentalPipelineTesting(ctx) {

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why gate the read on the env var when create and update are gated on config (config.Testing != nil)? The raw GET is the same request, so always reading spec.testing would be free, and as is two people running bundle plan on a pipeline that got testing added in the UI see different plans depending on their env.


// doRaw sends a request that the Go SDK cannot express yet because it lacks the testing field.
func (r *ResourcePipeline) doRaw(ctx context.Context, method, path string, request, response any) error {
apiClient, err := client.New(r.client.Config)

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit: this builds a new API client on every call, and DoRead runs once per pipeline per plan. Can we create it once in New like the cmd/air callers do?

update_file.py databricks.yml "$(sed -n '/^ testing:/,$p' databricks.yml)" ""
trace $CLI bundle plan
trace $CLI bundle deploy
trace print_requests.py //api/2.0/pipelines --nostamp | jq '{method, path, testing: .body.testing}'

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit: null here can mean either an absent key or "testing": null in the body. .body | has("testing") would make the assertion explicit.

@tharunbhuk-db
tharunbhuk-db changed the base branch from tharun/pipelines-test-b3-testing-paths to tharunbhuk-db/stack/pipelines-test-b3-testing-paths November 11, 2026 19:58
@tharunbhuk-db
tharunbhuk-db force-pushed the tharun/pipelines-test-b4-testing-deploy branch from e79333b to 35031d3 Compare November 11, 2026 20:00
@tharunbhuk-db
tharunbhuk-db changed the base branch from tharunbhuk-db/stack/pipelines-test-b3-testing-paths to tharun/pipelines-test-b3-testing-paths November 11, 2026 20:00
@tharunbhuk-db
tharunbhuk-db marked this pull request as draft November 11, 2026 20:01
…undle plan

bundle deploy sends a pipeline's testing on Create and Edit, and bundle plan
reads it back, so a change made outside the bundle shows in the plan and the
next deploy undoes it. The Go SDK does not have the field yet, so these calls
are raw: a pipeline without testing is still created and edited with the SDK,
and the raw read is used only with
DATABRICKS_BUNDLE_ENABLE_EXPERIMENTAL_PIPELINE_TESTING=true.

The test server stores spec.testing on Create and Edit and returns it on Get.

Co-authored-by: Isaac <no-reply@databricks.com>
@tharunbhuk-db
tharunbhuk-db force-pushed the tharun/pipelines-test-b3-testing-paths branch from 858d4df to 52dc912 Compare November 11, 2026 22:00
@tharunbhuk-db
tharunbhuk-db force-pushed the tharun/pipelines-test-b4-testing-deploy branch from 35031d3 to 2126212 Compare November 11, 2026 22:00

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.

4 participants