From 09daf1c3735aefbd07fc6e6d26392de79b90bf32 Mon Sep 17 00:00:00 2001 From: simon Date: Thu, 23 Apr 2026 15:44:56 +0200 Subject: [PATCH 1/5] tests: unblock CLI integration nightlies after main-branch drift Two unrelated main-branch regressions surfaced after the integration test trigger was re-enabled in #5034. Neither is caused by any in-flight feature PR; they just sat behind the disabled trigger. - record_cloud goldens: the host-metadata cache (#5011) regenerated most goldens but could not touch Cloud=true/Local=false suites. Regenerated workspace-file-io and pipeline-crud against e2-dogfood; changes are purely removal of redundant /.well-known/databricks-config requests. - dashboard assumptions: Lakeview behavior now varies across clouds: AWS staging includes serialized_dashboard in updates; GCP production no longer clears warehouse_id on workspace import. Loosened both assertions to Subset checks that still catch unexpected drift. Co-authored-by: Isaac --- .../record_cloud/pipeline-crud/output.txt | 20 ---------- .../record_cloud/workspace-file-io/output.txt | 40 ------------------- .../assumptions/dashboard_assumptions_test.go | 20 +++++----- 3 files changed, 10 insertions(+), 70 deletions(-) diff --git a/acceptance/selftest/record_cloud/pipeline-crud/output.txt b/acceptance/selftest/record_cloud/pipeline-crud/output.txt index c62fb4a463c..97ac1421a4b 100644 --- a/acceptance/selftest/record_cloud/pipeline-crud/output.txt +++ b/acceptance/selftest/record_cloud/pipeline-crud/output.txt @@ -27,10 +27,6 @@ "test-pipeline-1" >>> print_requests -{ - "method": "GET", - "path": "/.well-known/databricks-config" -} { "method": "GET", "path": "/api/2.0/pipelines/[UUID]" @@ -40,10 +36,6 @@ >>> [CLI] pipelines update [UUID] --json @pipeline2.json >>> print_requests -{ - "method": "GET", - "path": "/.well-known/databricks-config" -} { "method": "PUT", "path": "/api/2.0/pipelines/[UUID]", @@ -65,10 +57,6 @@ "test-pipeline-2" >>> print_requests -{ - "method": "GET", - "path": "/.well-known/databricks-config" -} { "method": "GET", "path": "/api/2.0/pipelines/[UUID]" @@ -78,10 +66,6 @@ >>> [CLI] pipelines delete [UUID] >>> print_requests -{ - "method": "GET", - "path": "/.well-known/databricks-config" -} { "method": "DELETE", "path": "/api/2.0/pipelines/[UUID]" @@ -94,10 +78,6 @@ Error: The specified pipeline [UUID] was not found. Exit code: 1 >>> print_requests -{ - "method": "GET", - "path": "/.well-known/databricks-config" -} { "method": "GET", "path": "/api/2.0/pipelines/[UUID]" diff --git a/acceptance/selftest/record_cloud/workspace-file-io/output.txt b/acceptance/selftest/record_cloud/workspace-file-io/output.txt index d08a332e6a1..7f515ba1511 100644 --- a/acceptance/selftest/record_cloud/workspace-file-io/output.txt +++ b/acceptance/selftest/record_cloud/workspace-file-io/output.txt @@ -11,10 +11,6 @@ "method": "GET", "path": "/api/2.0/preview/scim/v2/Me" } -{ - "method": "GET", - "path": "/.well-known/databricks-config" -} { "method": "POST", "path": "/api/2.0/workspace/mkdirs", @@ -27,10 +23,6 @@ >>> [CLI] workspace import /Users/[USERNAME]/[UNIQUE_NAME]/hello.txt --format AUTO --file ./hello.txt >>> print_requests -{ - "method": "GET", - "path": "/.well-known/databricks-config" -} { "method": "POST", "path": "/api/2.0/workspace/import", @@ -49,10 +41,6 @@ } >>> print_requests -{ - "method": "GET", - "path": "/.well-known/databricks-config" -} { "method": "GET", "path": "/api/2.0/workspace/list", @@ -69,10 +57,6 @@ } >>> print_requests -{ - "method": "GET", - "path": "/.well-known/databricks-config" -} { "method": "GET", "path": "/api/2.0/workspace/get-status", @@ -88,10 +72,6 @@ hello, world >>> print_requests -{ - "method": "GET", - "path": "/.well-known/databricks-config" -} { "method": "GET", "path": "/api/2.0/workspace/export", @@ -105,10 +85,6 @@ hello, world >>> [CLI] workspace delete /Users/[USERNAME]/[UNIQUE_NAME]/hello.txt >>> print_requests -{ - "method": "GET", - "path": "/.well-known/databricks-config" -} { "method": "POST", "path": "/api/2.0/workspace/delete", @@ -124,10 +100,6 @@ Error: Path (/Users/[USERNAME]/[UNIQUE_NAME]/hello.txt) doesn't exist. Exit code: 1 >>> print_requests -{ - "method": "GET", - "path": "/.well-known/databricks-config" -} { "method": "GET", "path": "/api/2.0/workspace/get-status", @@ -144,10 +116,6 @@ ID Type Language Path >>> [CLI] workspace delete /Users/[USERNAME]/[UNIQUE_NAME] >>> print_requests -{ - "method": "GET", - "path": "/.well-known/databricks-config" -} { "method": "GET", "path": "/api/2.0/workspace/list", @@ -155,10 +123,6 @@ ID Type Language Path "path": "/Users/[USERNAME]/[UNIQUE_NAME]" } } -{ - "method": "GET", - "path": "/.well-known/databricks-config" -} { "method": "POST", "path": "/api/2.0/workspace/delete", @@ -174,10 +138,6 @@ Error: Path (/Users/[USERNAME]/[UNIQUE_NAME]) doesn't exist. Exit code: 1 >>> print_requests -{ - "method": "GET", - "path": "/.well-known/databricks-config" -} { "method": "GET", "path": "/api/2.0/workspace/list", diff --git a/integration/assumptions/dashboard_assumptions_test.go b/integration/assumptions/dashboard_assumptions_test.go index 4a379a97cfc..a8fe8cbe70c 100644 --- a/integration/assumptions/dashboard_assumptions_test.go +++ b/integration/assumptions/dashboard_assumptions_test.go @@ -111,15 +111,15 @@ func TestDashboardAssumptions_WorkspaceImport(t *testing.T) { }) require.NoError(t, err) - // Confirm that only the expected fields have been updated. - assert.ElementsMatch(t, []string{ - "etag", - "update_time", - }, updatedFieldPaths) - - // The warehouse_id field is cleared after workspace import. - assert.ElementsMatch(t, []string{ - "warehouse_id", - }, deletedFieldPaths) + // etag and update_time always change after workspace import. serialized_dashboard + // may also appear depending on the Lakeview server version (observed on AWS staging + // but not on GCP production). + assert.Contains(t, updatedFieldPaths, "etag") + assert.Contains(t, updatedFieldPaths, "update_time") + assert.Subset(t, []string{"etag", "update_time", "serialized_dashboard"}, updatedFieldPaths) + + // warehouse_id may be cleared depending on the Lakeview server version (observed on + // AWS staging but not on GCP production). + assert.Subset(t, []string{"warehouse_id"}, deletedFieldPaths) } } From aad07da7aa5b9010f1b45a8a872da5b75fd686d2 Mon Sep 17 00:00:00 2001 From: simon Date: Thu, 23 Apr 2026 15:47:37 +0200 Subject: [PATCH 2/5] tests: collapse dashboard assertions into three Subset calls Simplification pass: two assert.Contains + assert.Subset become assert.Subset(actual, required) + assert.Subset(allowed, actual), and the two comments merge into one. Co-authored-by: Isaac --- integration/assumptions/dashboard_assumptions_test.go | 11 +++-------- 1 file changed, 3 insertions(+), 8 deletions(-) diff --git a/integration/assumptions/dashboard_assumptions_test.go b/integration/assumptions/dashboard_assumptions_test.go index a8fe8cbe70c..7d127d10bfe 100644 --- a/integration/assumptions/dashboard_assumptions_test.go +++ b/integration/assumptions/dashboard_assumptions_test.go @@ -111,15 +111,10 @@ func TestDashboardAssumptions_WorkspaceImport(t *testing.T) { }) require.NoError(t, err) - // etag and update_time always change after workspace import. serialized_dashboard - // may also appear depending on the Lakeview server version (observed on AWS staging - // but not on GCP production). - assert.Contains(t, updatedFieldPaths, "etag") - assert.Contains(t, updatedFieldPaths, "update_time") + // etag and update_time always change after workspace import. serialized_dashboard and + // warehouse_id vary by Lakeview server version: observed on AWS staging but not GCP prod. + assert.Subset(t, updatedFieldPaths, []string{"etag", "update_time"}) assert.Subset(t, []string{"etag", "update_time", "serialized_dashboard"}, updatedFieldPaths) - - // warehouse_id may be cleared depending on the Lakeview server version (observed on - // AWS staging but not on GCP production). assert.Subset(t, []string{"warehouse_id"}, deletedFieldPaths) } } From a2fc0e70bfba1b485240bbec0bf873c615ff4f33 Mon Sep 17 00:00:00 2001 From: simon Date: Thu, 23 Apr 2026 16:04:21 +0200 Subject: [PATCH 3/5] tests: regenerate volume-io record_cloud golden too Same post-cache drift as the other two record_cloud suites; this one is gated on RequiresUnityCatalog so it skipped on non-UC nightlies but would fail on the aws-prod-ucws-is / azure-prod-ucws-is runners. Regenerated against e2-dogfood with TEST_METASTORE_ID set. Flagged by codex review. Co-authored-by: Isaac --- .../record_cloud/volume-io/output.txt | 48 ------------------- 1 file changed, 48 deletions(-) diff --git a/acceptance/selftest/record_cloud/volume-io/output.txt b/acceptance/selftest/record_cloud/volume-io/output.txt index bcce9a7f896..b06ba039261 100644 --- a/acceptance/selftest/record_cloud/volume-io/output.txt +++ b/acceptance/selftest/record_cloud/volume-io/output.txt @@ -26,10 +26,6 @@ } >>> print_requests -{ - "method": "GET", - "path": "/.well-known/databricks-config" -} { "method": "GET", "path": "/api/2.1/unity-catalog/schemas/main.schema-[UNIQUE_NAME]" @@ -42,10 +38,6 @@ } >>> print_requests -{ - "method": "GET", - "path": "/.well-known/databricks-config" -} { "method": "POST", "path": "/api/2.1/unity-catalog/volumes", @@ -64,10 +56,6 @@ } >>> print_requests -{ - "method": "GET", - "path": "/.well-known/databricks-config" -} { "method": "GET", "path": "/api/2.1/unity-catalog/volumes/main.schema-[UNIQUE_NAME].volume-[UNIQUE_NAME]" @@ -77,10 +65,6 @@ ./hello.txt -> dbfs:/Volumes/main/schema-[UNIQUE_NAME]/volume-[UNIQUE_NAME]/hello.txt >>> print_requests -{ - "method": "GET", - "path": "/.well-known/databricks-config" -} { "method": "HEAD", "path": "/api/2.0/fs/directories/Volumes/main/schema-[UNIQUE_NAME]/volume-[UNIQUE_NAME]" @@ -102,10 +86,6 @@ hello.txt >>> print_requests -{ - "method": "GET", - "path": "/.well-known/databricks-config" -} { "method": "GET", "path": "/api/2.0/fs/directories/Volumes/main/schema-[UNIQUE_NAME]/volume-[UNIQUE_NAME]" @@ -114,10 +94,6 @@ hello.txt >>> [CLI] fs cat dbfs:/Volumes/main/schema-[UNIQUE_NAME]/volume-[UNIQUE_NAME]/hello.txt hello, world >>> print_requests -{ - "method": "GET", - "path": "/.well-known/databricks-config" -} { "method": "GET", "path": "/api/2.0/fs/files/Volumes/main/schema-[UNIQUE_NAME]/volume-[UNIQUE_NAME]/hello.txt" @@ -126,10 +102,6 @@ hello, world >>> [CLI] fs rm dbfs:/Volumes/main/schema-[UNIQUE_NAME]/volume-[UNIQUE_NAME]/hello.txt >>> print_requests -{ - "method": "GET", - "path": "/.well-known/databricks-config" -} { "method": "HEAD", "path": "/api/2.0/fs/directories/Volumes/main/schema-[UNIQUE_NAME]/volume-[UNIQUE_NAME]/hello.txt" @@ -146,10 +118,6 @@ hello, world >>> [CLI] fs ls dbfs:/Volumes/main/schema-[UNIQUE_NAME]/volume-[UNIQUE_NAME] >>> print_requests -{ - "method": "GET", - "path": "/.well-known/databricks-config" -} { "method": "GET", "path": "/api/2.0/fs/directories/Volumes/main/schema-[UNIQUE_NAME]/volume-[UNIQUE_NAME]" @@ -158,10 +126,6 @@ hello, world >>> [CLI] volumes delete main.schema-[UNIQUE_NAME].volume-[UNIQUE_NAME] >>> print_requests -{ - "method": "GET", - "path": "/.well-known/databricks-config" -} { "method": "DELETE", "path": "/api/2.1/unity-catalog/volumes/main.schema-[UNIQUE_NAME].volume-[UNIQUE_NAME]" @@ -173,10 +137,6 @@ Error: Volume 'main.schema-[UNIQUE_NAME].volume-[UNIQUE_NAME]' does not exist. Exit code: 1 >>> print_requests -{ - "method": "GET", - "path": "/.well-known/databricks-config" -} { "method": "GET", "path": "/api/2.1/unity-catalog/volumes/main.schema-[UNIQUE_NAME].volume-[UNIQUE_NAME]" @@ -185,10 +145,6 @@ Exit code: 1 >>> [CLI] schemas delete main.schema-[UNIQUE_NAME] >>> print_requests -{ - "method": "GET", - "path": "/.well-known/databricks-config" -} { "method": "DELETE", "path": "/api/2.1/unity-catalog/schemas/main.schema-[UNIQUE_NAME]" @@ -200,10 +156,6 @@ Error: Schema 'main.schema-[UNIQUE_NAME]' does not exist. Exit code: 1 >>> print_requests -{ - "method": "GET", - "path": "/.well-known/databricks-config" -} { "method": "GET", "path": "/api/2.1/unity-catalog/schemas/main.schema-[UNIQUE_NAME]" From f05d5cd9680e496b6a797c48b0b479070ac1e451 Mon Sep 17 00:00:00 2001 From: simon Date: Thu, 23 Apr 2026 17:19:51 +0200 Subject: [PATCH 4/5] tests: drop display_name for test-dabs users in permissions/jobs/delete_one/cloud The prod-is test workspace no longer returns display_name for test-dabs-1@databricks.com and test-dabs-2@databricks.com in the permissions API response (the SPN owner still does). Predictable server-side drift, not reproducible against e2-dogfood because the SPN/user distinction differs. Mass-replacement edit per the testing rule exception. Co-authored-by: Isaac --- .../jobs/delete_one/cloud/out.permissions_create.json | 2 -- .../jobs/delete_one/cloud/out.permissions_update.json | 1 - 2 files changed, 3 deletions(-) diff --git a/acceptance/bundle/resources/permissions/jobs/delete_one/cloud/out.permissions_create.json b/acceptance/bundle/resources/permissions/jobs/delete_one/cloud/out.permissions_create.json index 924f06a6f42..3f3cf0329e6 100644 --- a/acceptance/bundle/resources/permissions/jobs/delete_one/cloud/out.permissions_create.json +++ b/acceptance/bundle/resources/permissions/jobs/delete_one/cloud/out.permissions_create.json @@ -28,7 +28,6 @@ "permission_level": "CAN_MANAGE_RUN" } ], - "display_name": "test-dabs-1@databricks.com", "user_name": "test-dabs-1@databricks.com" }, { @@ -38,7 +37,6 @@ "permission_level": "CAN_VIEW" } ], - "display_name": "test-dabs-2@databricks.com", "user_name": "test-dabs-2@databricks.com" }, { diff --git a/acceptance/bundle/resources/permissions/jobs/delete_one/cloud/out.permissions_update.json b/acceptance/bundle/resources/permissions/jobs/delete_one/cloud/out.permissions_update.json index 5d43ee3943b..fbe6a20acf1 100644 --- a/acceptance/bundle/resources/permissions/jobs/delete_one/cloud/out.permissions_update.json +++ b/acceptance/bundle/resources/permissions/jobs/delete_one/cloud/out.permissions_update.json @@ -28,7 +28,6 @@ "permission_level": "CAN_VIEW" } ], - "display_name": "test-dabs-2@databricks.com", "user_name": "test-dabs-2@databricks.com" }, { From a30a7392b04b77169a076e626c77b15b065441e2 Mon Sep 17 00:00:00 2001 From: simon Date: Thu, 23 Apr 2026 18:38:02 +0200 Subject: [PATCH 5/5] Revert "tests: drop display_name for test-dabs users in permissions/jobs/delete_one/cloud" This reverts commit f05d5cd9680e496b6a797c48b0b479070ac1e451. --- .../jobs/delete_one/cloud/out.permissions_create.json | 2 ++ .../jobs/delete_one/cloud/out.permissions_update.json | 1 + 2 files changed, 3 insertions(+) diff --git a/acceptance/bundle/resources/permissions/jobs/delete_one/cloud/out.permissions_create.json b/acceptance/bundle/resources/permissions/jobs/delete_one/cloud/out.permissions_create.json index 3f3cf0329e6..924f06a6f42 100644 --- a/acceptance/bundle/resources/permissions/jobs/delete_one/cloud/out.permissions_create.json +++ b/acceptance/bundle/resources/permissions/jobs/delete_one/cloud/out.permissions_create.json @@ -28,6 +28,7 @@ "permission_level": "CAN_MANAGE_RUN" } ], + "display_name": "test-dabs-1@databricks.com", "user_name": "test-dabs-1@databricks.com" }, { @@ -37,6 +38,7 @@ "permission_level": "CAN_VIEW" } ], + "display_name": "test-dabs-2@databricks.com", "user_name": "test-dabs-2@databricks.com" }, { diff --git a/acceptance/bundle/resources/permissions/jobs/delete_one/cloud/out.permissions_update.json b/acceptance/bundle/resources/permissions/jobs/delete_one/cloud/out.permissions_update.json index fbe6a20acf1..5d43ee3943b 100644 --- a/acceptance/bundle/resources/permissions/jobs/delete_one/cloud/out.permissions_update.json +++ b/acceptance/bundle/resources/permissions/jobs/delete_one/cloud/out.permissions_update.json @@ -28,6 +28,7 @@ "permission_level": "CAN_VIEW" } ], + "display_name": "test-dabs-2@databricks.com", "user_name": "test-dabs-2@databricks.com" }, {