Skip to content

acc: run Lakebase invariant tests on AWS and Azure via CONFIG_CloudName#5955

Open
pietern wants to merge 2 commits into
mainfrom
lakebase-invariant-per-cloud
Open

acc: run Lakebase invariant tests on AWS and Azure via CONFIG_CloudName#5955
pietern wants to merge 2 commits into
mainfrom
lakebase-invariant-per-cloud

Conversation

@pietern

@pietern pietern commented Jul 17, 2026

Copy link
Copy Markdown
Contributor

Follow-up to #5952.

Adds a CONFIG_CloudName=<aws|azure|gcp> pseudo-var alongside CONFIG_Cloud so EnvMatrixExclude rules can drop a variant on a single cloud instead of all clouds. It rides the same match-then-strip path in ExpandEnvMatrix, so it never leaks into the test environment, subtest names, or replacements.

Use it to gate the Lakebase invariant templates on GCP only: both Lakebase v2 (postgres_*) and Lakebase v1 (database_instance/database_catalog/synced_database_table) are unavailable on GCP but work on AWS and Azure. #5952 excluded them from all cloud runs; this narrows that to GCP so they run on AWS and Azure again.

This pull request and its description were written by Isaac.

@eng-dev-ecosystem-bot

eng-dev-ecosystem-bot commented Jul 17, 2026

Copy link
Copy Markdown
Collaborator

Integration test report

Commit: fbd7435

Run: 29579618554

Env 🔄​flaky 💚​RECOVERED 🙈​SKIP ✅​pass 🙈​skip Time
💚​ aws linux 4 4 227 1120 4:41
💚​ aws windows 4 4 229 1118 7:33
💚​ aws-ucws linux 4 4 316 1036 7:40
💚​ aws-ucws windows 4 4 318 1034 8:03
💚​ azure linux 4 4 227 1119 4:39
💚​ azure windows 4 4 229 1117 6:52
🔄​ azure-ucws linux 3 3 4 316 1033 9:11
💚​ azure-ucws windows 4 4 320 1031 9:32
💚​ gcp linux 4 4 226 1121 5:03
💚​ gcp windows 4 4 228 1119 6:47
10 interesting tests: 4 SKIP, 3 flaky, 3 RECOVERED
Test Name aws linux aws windows aws-ucws linux aws-ucws windows azure linux azure windows azure-ucws linux azure-ucws windows gcp linux gcp windows
🔄​ TestAccept 💚​R 💚​R 💚​R 💚​R 💚​R 💚​R 🔄​f 💚​R 💚​R 💚​R
🙈​ TestAccept/bundle/invariant/no_drift 🙈​S 🙈​S 🙈​S 🙈​S 🙈​S 🙈​S 🙈​S 🙈​S 🙈​S 🙈​S
🙈​ TestAccept/bundle/resources/vector_search_endpoints/drift/recreated_same_name 🙈​S 🙈​S 🙈​S 🙈​S 🙈​S 🙈​S 🙈​S 🙈​S 🙈​S 🙈​S
🙈​ TestAccept/bundle/resources/vector_search_indexes/recreate/embedding_dimension 🙈​S 🙈​S 🙈​S 🙈​S 🙈​S 🙈​S 🙈​S 🙈​S 🙈​S 🙈​S
🔄​ TestAccept/ssh/connect-serverless-cpu 🙈​s 🙈​s ✅​p ✅​p 🙈​s 🙈​s 🔄​f ✅​p 🙈​s 🙈​s
🔄​ TestAccept/ssh/connect-serverless-cpu/DATABRICKS_BUNDLE_ENGINE=direct ✅​p ✅​p 🔄​f ✅​p
🙈​ TestAccept/ssh/connection 🙈​S 🙈​S 🙈​S 🙈​S 🙈​S 🙈​S 🙈​S 🙈​S 🙈​S 🙈​S
💚​ TestFetchRepositoryInfoAPI_FromRepo 💚​R 💚​R 💚​R 💚​R 💚​R 💚​R 💚​R 💚​R 💚​R 💚​R
💚​ TestFetchRepositoryInfoAPI_FromRepo/root 💚​R 💚​R 💚​R 💚​R 💚​R 💚​R 💚​R 💚​R 💚​R 💚​R
💚​ TestFetchRepositoryInfoAPI_FromRepo/subdir 💚​R 💚​R 💚​R 💚​R 💚​R 💚​R 💚​R 💚​R 💚​R 💚​R
Top 9 slowest tests (at least 2 minutes):
duration env testname
7:49 azure-ucws windows TestAccept
7:09 aws windows TestAccept
6:33 aws-ucws windows TestAccept
6:26 azure windows TestAccept
6:23 gcp windows TestAccept
2:59 gcp linux TestAccept
2:58 azure linux TestAccept
2:57 aws linux TestAccept
2:53 aws-ucws linux TestAccept

Base automatically changed from lakebase-no-gcp to main July 17, 2026 09:59
Add a CONFIG_CloudName=<aws|azure|gcp> pseudo-var alongside CONFIG_Cloud so
EnvMatrixExclude rules can drop a variant on a single cloud rather than all
clouds. It rides the same match-then-strip path in ExpandEnvMatrix, so it never
leaks into the test environment, subtest names, or replacements.

Use it to gate the Lakebase invariant templates on GCP only: both Lakebase v2
(postgres_*) and Lakebase v1 (database instances/catalogs/synced tables) are
unavailable on GCP but work on AWS and Azure, so they now run on both instead of
being excluded from all cloud runs.

Co-authored-by: Isaac
@pietern
pietern force-pushed the lakebase-invariant-per-cloud branch from 639658c to 04550f4 Compare July 17, 2026 10:05
@pietern
pietern marked this pull request as ready for review July 17, 2026 10:08
@github-actions

github-actions Bot commented Jul 17, 2026

Copy link
Copy Markdown
Contributor

Approval status: pending

/acceptance/bundle/ - needs approval

8 files changed
Suggested: @denik
Also eligible: @janniklasrose, @andrewnester, @shreyas-goenka, @anton-107, @lennartkats-db

General files (require maintainer)

Files: acceptance/acceptance_test.go, acceptance/internal/config.go, acceptance/internal/config_test.go
Based on git history:

  • @denik -- recent work in acceptance/bundle/invariant/configs/, acceptance/, acceptance/bundle/invariant/

Any maintainer (@andrewnester, @anton-107, @denik, @shreyas-goenka, @simonfaltum, @renaudhartert-db, @janniklasrose, @lennartkats-db) can approve all areas.
See OWNERS for ownership rules.

Running the invariant postgres templates on cloud (see the CONFIG_CloudName
change) surfaced pre-existing template bugs that never fired because these
templates had never run against a real backend:

- postgres_endpoint declared an explicit read-write endpoint, colliding with the
  one the branch auto-provisions ("read_write endpoint already exists"). Take
  over the implicit production branch and primary endpoint with replace_existing.
- postgres_branch created a new branch; switch it to take over the implicitly
  provisioned production branch with replace_existing for consistency.
- postgres_synced_table referenced a project/branch it never declared ("Project
  not found") and a nonexistent source table. Declare the full base-resource
  chain (project, production branch, catalog, pipeline storage) and create a real
  source table via an init/cleanup script pair, mirroring the dedicated
  postgres_synced_tables resource test.

replace_existing does not exist in v0.293.0, so the seed deploy in continue_293
drops the unknown field and then fails creating the already-provisioned branch.
Exclude the three replace_existing templates from continue_293; they stay covered
by no_drift and migrate. Verified green on AWS and Azure.

Co-authored-by: Isaac
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