acc: Fix mlops-stacks deploy test for upstream stacks_version 0.5#5929
Merged
Conversation
The upstream MLOps Stacks template bumped to stacks_version 0.5, which dropped the non-UC path: the model is now always registered in Unity Catalog (resources.registered_models instead of resources.models) and jobs run on serverless compute by default. The old test failed in every nightly env — the golden still expected the legacy models resource, and `bundle deploy` could not create the UC model or serverless jobs. Fix the test forward to match the new template: - Drop the removed input_include_models_in_unity_catalog option from the init config. - Create the model's schema (hard-coded to the project name by the template) in the shared "main" catalog before deploy and drop it in cleanup, then deploy with --var catalog_name=main. This mirrors the main-catalog + schema-$UNIQUE_NAME convention used by other cloud UC acceptance tests. - Read the model id from resources.registered_models.model in the summary assertion. - Gate the test with RequiresUnityCatalog=true so it skips on the non-UC cloud envs (which have no metastore) instead of failing. Verified end-to-end on a UC + serverless workspace: both the terraform and direct engine variants deploy, assert the batch inference job, and destroy cleanly, producing the regenerated golden output. Co-authored-by: Isaac
9f61e16 to
604bb45
Compare
janniklasrose
approved these changes
Jul 15, 2026
Comment on lines
+37
to
+39
| trace $CLI bundle summary --var catalog_name=main | ||
| trace $CLI bundle validate --var catalog_name=main | ||
| trace $CLI bundle deploy --var catalog_name=main |
Contributor
There was a problem hiding this comment.
nit: consider test.toml with env BUNDLE_VAR_catalog_name="main" to avoid all the --var in various places in this script
andrewnester
approved these changes
Jul 15, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Why
The
bundle/deploy/mlops-stacksacceptance test deploys the upstream MLOps Stacks template end-to-end, so upstream template changes can break it. Upstream bumped tostacks_version 0.5, which reworked the scaffold:input_include_models_in_unity_catalogtoggle was removed — the model is now always registered in Unity Catalog (resources.registered_modelsinstead of the legacyresources.models).The old test failed in every nightly env: the golden still expected the legacy
modelsresource (and stale warning line numbers), andbundle deploycould no longer create the UC model or serverless jobs on the test workspaces.What
Fix the test forward to match the new template:
input_include_models_in_unity_catalogoption from the init config.maincatalog and deploy with--var catalog_name=main— mirroring themain-catalog +schema-$UNIQUE_NAMEconvention already used by other cloud UC acceptance tests. Drop the schema in cleanup.resources.registered_models.modelin the summary assertion.RequiresUnityCatalog = trueso it skips on the non-UC cloud envs (which have no metastore) instead of failing withMETASTORE_DOES_NOT_EXIST.Tests
Verified end-to-end on the real nightly UC + serverless env
aws-prod-ucws— both engine variants pass and produce identical output:The full deploy → assert batch-inference job → destroy → drop-schema cycle completes cleanly with no leaked resources. Test-only change, so no changelog fragment (per pr-checklist).
This pull request and its description were written by Isaac.