Skip to content

Add support for experiments in direct deployment - #3669

Merged
shreyas-goenka merged 26 commits into
mainfrom
direct-experiments
Oct 1, 2025
Merged

Add support for experiments in direct deployment#3669
shreyas-goenka merged 26 commits into
mainfrom
direct-experiments

Conversation

@shreyas-goenka

@shreyas-goenkashreyas-goenka commented Sep 29, 2025

Copy link
Copy Markdown
Contributor

Changes

This PR adds support for ML experiments to direct deployment, keeping the behaviour the same as the current Terraform implementation.

Why

To make migration to direct possible and seamless.

Tests

New integration test.

- Add ResourceExperiment adapter implementing CRUD operations for MLflow experiments
- Add experiments to SupportedResources in direct deployment bundle
- Add acceptance test for experiment deployment in both terraform and direct modes
- Enable creating, updating, and deleting experiments via direct API calls
This allows experiments to be deployed using DATABRICKS_BUNDLE_ENGINE=direct-exp,
providing an alternative to the terraform-based deployment approach.
@eng-dev-ecosystem-bot

eng-dev-ecosystem-bot commented Sep 29, 2025

Copy link
Copy Markdown
Collaborator

Run: 18160547665

Env✅​pass🔄​flaky🙈​skip
✅​aws linux320536
✅​aws windows321535
✅​aws-ucws linux433433
✅​aws-ucws windows434432
🔄​azure linux3191535
✅​azure windows321534
✅​azure-ucws linux433432
✅​azure-ucws windows434431
✅​gcp linux319537
✅​gcp windows320536
Test Nameazure linux
TestSyncIncrementalSyncPythonNotebookDelete🔄​flaky

@denik

Copy link
Copy Markdown
Contributor

Can we enable acceptance/bundle/deploy/mlops-stacks/ ?

Comment threadlibs/testserver/experiments.go Outdated
Comment threadbundle/direct/dresources/experiment.go Outdated
Comment threadbundle/direct/dresources/experiment.go Outdated

@denikdenik 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.

Looks good. Same suggestion on test organization as in https://github.com/databricks/cli/pull/3670/files#r2393785138 (can be a follow up).


func (*ResourceExperiment) FieldTriggers() map[string]deployplan.ActionType {
return map[string]deployplan.ActionType{
"name": deployplan.ActionTypeUpdate,

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.

a link to corresponding TF code would be helpful there.

@shreyas-goenka
shreyas-goenka merged commit 58479e3 into mainOct 1, 2025
12 of 13 checks passed
@shreyas-goenka
shreyas-goenka deleted the direct-experiments branch October 1, 2025 12:34
@@ -0,0 +1,3 @@
update experiments.my_experiment

Plan: 0 to add, 1 to change, 0 to delete, 0 unchanged

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.

Why do we have 'update' for terraform but 'skip' for direct here? @shreyas-goenka

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.

I think I remember now, terraform shows changes but does not perform the update. Direct also does not do the update for tags but also does not show it in the plan.

denik pushed a commit that referenced this pull request May 20, 2026
## Changes
This PR adds support for ML experiments to direct deployment, keeping
the behaviour the same as the current Terraform implementation.
## Why
To make migration to direct possible and seamless.
## Tests
New integration test.
Sign up for freeto 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

@shreyas-goenka@eng-dev-ecosystem-bot@denik