Skip to content

acc: run bundle/deploy/mlops-stacks locally#5829

Open
radakam wants to merge 9 commits into
mainfrom
acc-local-mlops-stacks
Open

acc: run bundle/deploy/mlops-stacks locally#5829
radakam wants to merge 9 commits into
mainfrom
acc-local-mlops-stacks

Conversation

@radakam

@radakam radakam commented Jul 3, 2026

Copy link
Copy Markdown
Contributor

Summary

  • Flip bundle/deploy/mlops-stacks to Local = true so it runs against the local testserver in addition to cloud
  • Vendor a pinned, minimal copy of the mlops-stacks template (revision 1c87ae24, tracked in template.REVISION) for local runs, since bundle init mlops-stacks requires a GitHub clone that local acceptance tests cannot reach. The vendored tree is pruned to only the files the test exercises
  • Use the vendored template when CLOUD_ENV is unset; cloud runs still clone from GitHub. A test.toml Repl rewrites bundle init .*/mlops-stacks/template to bundle init mlops-stacks so local and cloud golden output stays unified.

@radakam radakam temporarily deployed to test-trigger-is July 3, 2026 14:23 — with GitHub Actions Inactive
@radakam radakam temporarily deployed to test-trigger-is July 3, 2026 14:23 — with GitHub Actions Inactive
@radakam radakam temporarily deployed to test-trigger-is July 3, 2026 14:44 — with GitHub Actions Inactive
@radakam radakam temporarily deployed to test-trigger-is July 3, 2026 14:44 — with GitHub Actions Inactive
@eng-dev-ecosystem-bot

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

Copy link
Copy Markdown
Collaborator

Integration test report

Commit: e6bb97d

Run: 28787646934

Env 🔄​flaky 💚​RECOVERED 🙈​SKIP ✅​pass 🙈​skip Time
💚​ aws linux 1 4 230 1057 4:07
💚​ aws windows 1 4 232 1055 3:40
💚​ aws-ucws linux 1 4 314 975 5:29
💚​ aws-ucws windows 1 4 316 973 4:09
💚​ azure linux 1 4 230 1056 4:01
💚​ azure windows 1 4 232 1054 3:28
💚​ azure-ucws linux 1 4 316 972 5:12
🔄​ azure-ucws windows 1 1 4 317 970 5:19
💚​ gcp linux 1 4 229 1058 3:44
💚​ gcp windows 1 4 231 1056 3:19
6 interesting tests: 4 SKIP, 1 RECOVERED, 1 flaky
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 💚​R 💚​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/connection 🙈​S 🙈​S 🙈​S 🙈​S 🙈​S 🙈​S 🙈​S 🙈​S 🙈​S 🙈​S
🔄​ TestFetchRepositoryInfoAPI_FromRepo ✅​p ✅​p ✅​p ✅​p ✅​p ✅​p ✅​p 🔄​f ✅​p ✅​p
Top 5 slowest tests (at least 2 minutes):
duration env testname
3:19 aws windows TestAccept
3:10 azure windows TestAccept
3:01 gcp windows TestAccept
2:59 azure-ucws windows TestAccept
2:47 aws-ucws windows TestAccept

@radakam radakam temporarily deployed to test-trigger-is July 6, 2026 07:47 — with GitHub Actions Inactive
@radakam radakam temporarily deployed to test-trigger-is July 6, 2026 07:47 — with GitHub Actions Inactive
radakam added 3 commits July 6, 2026 10:14
Flip bundle/deploy/mlops-stacks to Local = true so it runs against the
local testserver in addition to cloud.

Local runs cannot git-clone mlops-stacks from GitHub, so vendor a pinned
copy of the template under acceptance/bundle/deploy/mlops-stacks/template/
and use it when CLOUD_ENV is unset. A test.toml Repl normalizes the init
command in output so local and cloud golden files stay unified.
The offline copy vendored for the local run only needs the files required
to render this test's config and satisfy its assertions: the template
machinery (schema, library, run_validations, update_layout), the asserted
root README, databricks.yml, the three included resource YAMLs, and the
four referenced notebooks (BatchInference, Train, ModelValidation,
ModelDeployment).

Drop the remaining 112 files (docs, images, CICD workflows, tests,
feature-store/MLflow-recipe/monitoring variants, binary parquet fixtures).
They are either FS/recipe-gated (never rendered for this config) or synced
but unreferenced, so removing them leaves output.txt byte-identical and the
test passing on both engines. The cloud run is unaffected; it still clones
mlops-stacks from GitHub.
…-stacks template

The vendored MLOps Stacks template contained a directory named using a
backtick-quoted named-template invocation, which is an illegal Go module
file path (breaking TestFilePath and module packaging repo-wide). Rename
it to {{.input_project_name}}; for this test the project name is always
lowercase-alphanumeric, so the alphanumeric_underscore transform is a
no-op and rendered output is unchanged.

Also exempt the vendored template from the whitespace linter via
.wsignore, matching the existing "Developed elsewhere" convention, so
upstream files are kept as-is.
@radakam radakam force-pushed the acc-local-mlops-stacks branch from cc3d0b3 to 456aec7 Compare July 6, 2026 08:14
@radakam radakam temporarily deployed to test-trigger-is July 6, 2026 08:15 — with GitHub Actions Inactive
@radakam radakam temporarily deployed to test-trigger-is July 6, 2026 08:15 — with GitHub Actions Inactive
On Windows $TESTDIR expands with backslash separators, so the local
template path was rendered as ...\mlops-stacks/template and the repl
that maps it to the cloud template name "mlops-stacks" did not match,
failing the acceptance test on Windows. Match either separator before
"mlops-stacks".
@radakam radakam temporarily deployed to test-trigger-is July 6, 2026 08:54 — with GitHub Actions Inactive
@radakam radakam temporarily deployed to test-trigger-is July 6, 2026 08:54 — with GitHub Actions Inactive
@radakam radakam marked this pull request as ready for review July 6, 2026 09:46
@github-actions

github-actions Bot commented Jul 6, 2026

Copy link
Copy Markdown
Contributor

Approval status: pending

/acceptance/bundle/ - needs approval

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

General files (require maintainer)

Files: .wsignore, Taskfile.yml, tools/update_mlops_stacks_template.py
Based on git history:

  • @pietern -- recent work in ./, tools/

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

@denik denik left a comment

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.

can we add Taskfile entry that upgrades mlops repo to the latest from github?

Comment thread acceptance/bundle/deploy/mlops-stacks/script Outdated
radakam added 2 commits July 6, 2026 10:33
Init from the vendored template on both local and cloud runs instead of
cloning mlops-stacks from GitHub on cloud. This keeps the two runs on the
same input, so a failure points at either the template or the cloud env,
not an ambiguous mix of both.
Add `task update-mlops-stacks-template`, backed by
tools/update_mlops_stacks_template.py, to upgrade the vendored template to
the latest upstream commit. It refreshes only the currently-vendored files
(preserving the earlier pruning), undoes the illegal-Go-module-path
directory rename when mapping vendored paths back to upstream, and records
the new commit in template.REVISION.
@radakam radakam temporarily deployed to test-trigger-is July 6, 2026 10:34 — with GitHub Actions Inactive
@radakam radakam temporarily deployed to test-trigger-is July 6, 2026 10:34 — with GitHub Actions Inactive
Condense the update tool's docstring and the Windows-separator repl comment
to state the reason without the extra prose.
@radakam radakam temporarily deployed to test-trigger-is July 6, 2026 10:37 — with GitHub Actions Inactive
@radakam radakam temporarily deployed to test-trigger-is July 6, 2026 10:37 — with GitHub Actions Inactive
The name already says what it does; keep only the non-obvious "why" comments.
@radakam radakam temporarily deployed to test-trigger-is July 6, 2026 11:14 — with GitHub Actions Inactive
@radakam radakam temporarily deployed to test-trigger-is July 6, 2026 11:14 — with GitHub Actions Inactive
@radakam radakam temporarily deployed to test-trigger-is July 6, 2026 11:17 — with GitHub Actions Inactive
@radakam radakam temporarily deployed to test-trigger-is July 6, 2026 11:17 — with GitHub Actions Inactive
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.

3 participants