Skip to content

acceptance: skip default-python classic-compute tests on UC envs#5153

Draft
shreyas-goenka wants to merge 5 commits intomainfrom
fix-templates-default-python-uc
Draft

acceptance: skip default-python classic-compute tests on UC envs#5153
shreyas-goenka wants to merge 5 commits intomainfrom
fix-templates-default-python-uc

Conversation

@shreyas-goenka
Copy link
Copy Markdown
Contributor

@shreyas-goenka shreyas-goenka commented May 1, 2026

Summary

default-python classic-compute template tests fail on UC test workspaces because the pipeline template (source) omits catalog: when default_catalog resolves to "" or "hive_metastore" — which it does on *-prod-ucws-is, where the metastore-assignment carries the legacy literal default_catalog_name = "hive_metastore". Without an explicit catalog, DLT falls back to hive_metastore, which fails on UC-only workspaces with Hive Metastore is not enabled for this workspace.

The HMS-disable on UC workspaces might not have been rolled out to all workspaces yet (same dynamic as #5106's note that RESOURCE_ALREADY_EXISTS has not been rolled out to all workspaces yet). The same workspace can pass one nightly and fail the next as the rollout progresses, so a defensive skip is appropriate even when current samples happen to be green.

This PR adds a SkipOnUnityCatalog test config field (inverse of RequiresUnityCatalog) and sets it on integration_classic and combinations/classic. Coverage is preserved on non-UC envs. Drop the skip once UC reconciles default_catalog_name (filed with `#eng-unity-catalog`).

The serverless variant of combinations is unaffected — the template hardcodes catalog: main there.

Test plan

  • `out.test.toml` regenerated; passes locally.
  • Next nightly: classic-compute runs on non-UC, skips on UC; serverless unchanged.

This pull request was AI-assisted by Isaac.

The default-python template's pipeline resource defaults to a hive_metastore
catalog when no UC catalog is detected on the workspace (see
libs/template/templates/default/template/{{.project_name}}/resources/{{.project_name}}_etl.pipeline.yml.tmpl).

Several of the test workspaces (gcp-prod-is, aws-prod-is) have HMS
disabled, so deploys intermittently fail with:

  Error: cannot create resources.pipelines.X_etl: Hive Metastore is not
  enabled for this workspace; please publish to Unity Catalog. (400
  INVALID_PARAMETER_VALUE)

Set RequiresUnityCatalog = true on integration_classic and
combinations/classic so they only run on UC-enabled workspaces, where
default_catalog resolves to a real UC catalog and the pipeline gets a
proper "catalog:" field. The serverless variant of combinations is
unaffected because the template hardcodes "catalog: main" for serverless
pipelines without UC.

Co-authored-by: Isaac
…sic tests

Inverts the gate: keep coverage on non-UC envs and skip on UC envs where
default_catalog returns "hive_metastore" but no such catalog exists.

Co-authored-by: Isaac
@shreyas-goenka shreyas-goenka changed the title acceptance: gate templates/default-python classic-compute tests on UC acceptance: skip default-python classic-compute tests on UC envs May 4, 2026
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.

1 participant