Skip to content

Add support for configuring app health_check via bundle config - #7152

Open
arushiagarwal-db wants to merge 7 commits into
mainfrom
arushi-agarwal/apps-inline-health-check
Open

arushiagarwal-db wants to merge 7 commits into
mainfrom
arushi-agarwal/apps-inline-health-check

Conversation

@arushiagarwal-db

Copy link
Copy Markdown

Changes

Add health_check to the inline app config block for apps in bundle config:

resources:
  apps:
    myapp:
      source_code_path: ./app
      config:
        command: ["flask", "--app", "app", "run"]
        health_check:
          path: /health
          timeout_seconds: 120

The value is passed to the Apps Deploy API's new health_check field (path, timeout). The fields match health_check in app.yaml (path, timeout_seconds), so databricks apps import also inlines health_check from an existing app.yaml. The direct engine reads health_check back from the active deployment for drift detection, the same way it does for command and env.

Why

This follows #4271 (inline command/env). It lets users set the deploy-time health check per target in bundle config, without keeping it in a separate app.yaml.

Tests

  • Extended the acceptance/bundle/resources/apps/inline_config acceptance test with a health_check and a /health route in the test app.
  • Extended TestBuildAppDeploymentWithValueFrom and TestInlineAppConfigFileFieldPriority unit tests.
  • Regenerated refschema, JSON schema, and required-fields validation.

Supersedes #7081 (reopened from a branch in this repo so CI runs).

This pull request and its description were written by Isaac.

arushiagarwal-db and others added 2 commits October 21, 2026 16:34
Adds `health_check` (path, timeout_seconds) to the inline app `config`
block and passes it to the Apps Deploy API as `health_check`.

Co-authored-by: Isaac <no-reply@databricks.com>
Co-authored-by: Isaac <no-reply@databricks.com>
@github-actions github-actions Bot added the DABs DABs related issues label Oct 21, 2026
arushiagarwal-db and others added 2 commits October 21, 2026 16:38
Co-authored-by: Isaac <no-reply@databricks.com>
Co-authored-by: Isaac <no-reply@databricks.com>
@github-actions

github-actions Bot commented Oct 21, 2026 •

Copy link
Copy Markdown
Contributor

Commit: 3a187f626 | Workflow run

Regression test report

Selected 2 changed tests (limit=20, 0 not selected)

4 tests: regression=4 unreleased=0 coverage=0 failing=0

test branch main (2f505a7) latest (v1.22.1)
TestAccept/bundle/refschema/DMS= ✅ ❌ ❌
TestAccept/bundle/refschema/DMS=true ✅ ❌ ❌
TestAccept/bundle/resources/apps/inline_config/DMS= ✅ ❌ ❌
TestAccept/bundle/resources/apps/inline_config/DMS=true ✅ ❌ ❌
TestAccept/bundle/refschema/DMS=: branch ✅ | main (2f505a7) ❌ | latest (v1.22.1) ❌

main (2f505a7):

acceptance_test.go:1311: Diff:
        --- bundle/refschema/out.fields.txt
        +++ /tmp/TestAcceptbundlerefschemaDMS=1075467285/001/out.fields.txt
        @@ -118,9 +118,6 @@
         resources.apps.*.config.env[*].name	string	ALL
         resources.apps.*.config.env[*].value	string	ALL
         resources.apps.*.config.env[*].value_from	string	ALL
        -resources.apps.*.config.health_check	*resources.AppHealthCheck	ALL
        -resources.apps.*.config.health_check.path	string	ALL
        -resources.apps.*.config.health_check.timeout_seconds	int	ALL
         resources.apps.*.create_time	string	ALL
         resources.apps.*.creator	string	ALL
         resources.apps.*.default_git_source	*apps.GitSource	ALL

latest (v1.22.1):

acceptance_test.go:1311: Diff:
        --- bundle/refschema/out.fields.txt
        +++ /tmp/TestAcceptbundlerefschemaDMS=4038984278/001/out.fields.txt
        @@ -34,9 +34,6 @@
         resources.alerts.*.file_path	string	INPUT
         resources.alerts.*.id	string	ALL
         resources.alerts.*.lifecycle	resources.Lifecycle	INPUT
        -resources.alerts.*.lifecycle.depends_on	[]resources.DependsOn	INPUT
        -resources.alerts.*.lifecycle.depends_on[*]	resources.DependsOn	INPUT
        -resources.alerts.*.lifecycle.depends_on[*].resource	string	INPUT
         resources.alerts.*.lifecycle.prevent_destroy	bool	INPUT
         resources.alerts.*.lifecycle_state	sql.AlertLifecycleState	ALL
         resources.alerts.*.modified_status	string	INPUT
        @@ -118,9 +115,6 @@
         resources.apps.*.config.env[*].name	string	ALL
         resources.apps.*.config.env[*].value	string	ALL
         resources.apps.*.config.env[*].value_from	string	ALL
        -resources.apps.*.config.health_check	*resources.AppHealthCheck	ALL
        -resources.apps.*.config.health_check.path	string	ALL
        -resources.apps.*.config.health_check.timeout_seconds	int	ALL
         resources.apps.*.create_time	string	ALL
         resources.apps.*.creator	string	ALL
         resources.apps.*.default_git_source	*apps.GitSource	ALL
        @@ -161,9 +155,6 @@
         resources.apps.*.lifecycle	*dresources.StateLifecycle	REMOTE	STATE
         resources.apps.*.lifecycle	*resources.LifecycleWithStarted	INPUT
         resources.apps.*.lifecycle	resources.Lifecycle	INPUT
        -resources.apps.*.lifecycle.depends_on	[]resources.DependsOn	INPUT
        -resources.apps.*.lifecycle.depends_on[*]	resources.DependsOn	INPUT
        -resources.apps.*.lifecycle.depends_on[*].resource	string	INPUT
         resources.apps.*.lifecycle.prevent_destroy	bool	INPUT
         resources.apps.*.lifecycle.started	*bool	ALL
         resources.apps.*.modified_status	string	INPUT
        @@ -283,9 +274,6 @@
         resources.catalogs.*.id	string	INPUT
         resources.catalogs.*.isolation_mode	catalog.CatalogIsolationMode	REMOTE
         resources.catalogs.*.lifecycle	resources.Lifecycle	INPUT
        -resources.catalogs.*.lifecycle.depends_on	[]resources.DependsOn	INPUT
        -resources.catalogs.*.lifecycle.depends_on[*]	resources.DependsOn	INPUT
        -resources.catalogs.*.lifecycle.depends_on[*].resource	string	INPUT
         resources.catalogs.*.lifecycle.prevent_destroy	bool	INPUT
         resources.catalogs.*.managed_encryption_settings	*catalog.EncryptionSettings	ALL
         resources.catalogs.*.managed_encryption_settings.azure_encryption_settings	*catalog.AzureEncryptionSettings	ALL
        @@ -343,9 +331,6 @@
         resources.cluster_policies.*.libraries[*].requirements	string	ALL
         resources.cluster_policies.*.libraries[*].whl	string	ALL
         resources.cluster_policies.*.lifecycle	resources.Lifecycle	INPUT
        -resources.cluster_policies.*.lifecycle.depends_on	[]resources.DependsOn	INPUT
        -resources.cluster_policies.*.lifecycle.depends_on[*]	resources.DependsOn	INPUT
        -resources.cluster_policies.*.lifecycle.depends_on[*].resource	string	INPUT
         resources.cluster_policies.*.lifecycle.prevent_destroy	bool	INPUT
         resources.cluster_policies.*.max_clusters_per_user	int64	ALL
         resources.cluster_policies.*.modified_status	string	INPUT
        @@ -503,9 +488,6 @@
         resources.clusters.*.lifecycle	*dresources.StateLifecycle	REMOTE	STATE
         resources.clusters.*.lifecycle	*resources.LifecycleWithStarted	INPUT
         resources.clusters.*.lifecycle	resources.Lifecycle	INPUT
        -resources.clusters.*.lifecycle.depends_on	[]resources.DependsOn	INPUT
        -resources.clusters.*.lifecycle.depends_on[*]	resources.DependsOn	INPUT
        -resources.clusters.*.lifecycle.depends_on[*].resource	string	INPUT
         resources.clusters.*.lifecycle.prevent_destroy	bool	INPUT
         resources.clusters.*.lifecycle.started	*bool	ALL
         resources.clusters.*.modified_status	string	INPUT
        @@ -672,9 +654,6 @@
         resources.dashboards.*.file_path	string	INPUT
         resources.dashboards.*.id	string	INPUT
         resources.dashboards.*.lifecycle	resources.Lifecycle	INPUT
        -resources.dashboards.*.lifecycle.depends_on	[]resources.DependsOn	INPUT
        -resources.dashboards.*.lifecycle.depends_on[*]	resources.DependsOn	INPUT
        -resources.dashboards.*.lifecycle.depends_on[*].resource	string	INPUT
         resources.dashboards.*.lifecycle.prevent_destroy	bool	INPUT
         resources.dashboards.*.lifecycle_state	dashboards.LifecycleState	ALL
         resources.dashboards.*.modified_status	string	INPUT
        @@ -696,9 +675,6 @@
         resources.database_catalogs.*.database_name	string	ALL
         resources.database_catalogs.*.id	string	INPUT
         resources.database_catalogs.*.lifecycle	resources.Lifecycle	INPUT
        -resources.database_catalogs.*.lifecycle.depends_on	[]resources.DependsOn	INPUT
        -resources.database_catalogs.*.lifecycle.depends_on[*]	resources.DependsOn	INPUT
        -resources.database_catalogs.*.lifecycle.depends_on[*].resource	string	INPUT
         resources.database_catalogs.*.lifecycle.prevent_destroy	bool	INPUT
         resources.database_catalogs.*.modified_status	string	INPUT
         resources.database_catalogs.*.name	string	ALL
        @@ -733,9 +709,6 @@
         resources.database_instances.*.enable_readable_secondaries	bool	ALL
         resources.database_instances.*.id	string	INPUT
         resources.database_instances.*.lifecycle	resources.Lifecycle	INPUT
        -resources.database_instances.*.lifecycle.depends_on	[]resources.DependsOn	INPUT
        -resources.database_instances.*.lifecycle.depends_on[*]	resources.DependsOn	INPUT
        -resources.database_instances.*.lifecycle.depends_on[*].resource	string	INPUT
         resources.database_instances.*.lifecycle.prevent_destroy	bool	INPUT
         resources.database_instances.*.modified_status	string	INPUT
         resources.database_instances.*.name	string	ALL
        @@ -767,9 +740,6 @@
         resources.experiments.*.id	string	INPUT
         resources.experiments.*.last_update_time	int64	REMOTE
         resources.experiments.*.lifecycle	resources.Lifecycle	INPUT
        -resources.experiments.*.lifecycle.depends_on	[]resources.DependsOn	INPUT
        -resources.experiments.*.lifecycle.depends_on[*]	resources.DependsOn	INPUT
        -resources.experiments.*.lifecycle.depends_on[*].resource	string	INPUT
         resources.experiments.*.lifecycle.prevent_destroy	bool	INPUT
         resources.experiments.*.lifecycle_stage	string	REMOTE
         resources.experiments.*.modified_status	string	INPUT
        @@ -853,9 +823,6 @@
         resources.external_locations.*.id	string	INPUT
         resources.external_locations.*.isolation_mode	catalog.IsolationMode	REMOTE
         resources.external_locations.*.lifecycle	resources.Lifecycle	INPUT
        -resources.external_locations.*.lifecycle.depends_on	[]resources.DependsOn	INPUT
        -resources.external_locations.*.lifecycle.depends_on[*]	resources.DependsOn	INPUT
        -resources.external_locations.*.lifecycle.depends_on[*].resource	string	INPUT
         resources.external_locations.*.lifecycle.prevent_destroy	bool	INPUT
         resources.external_locations.*.metastore_id	string	REMOTE
         resources.external_locations.*.modified_status	string	INPUT
        @@ -961,9 +928,6 @@
         resources.features.*.inputs	[]string	ALL
         resources.features.*.inputs[*]	string	ALL
         resources.features.*.lifecycle	resources.Lifecycle	INPUT
        -resources.features.*.lifecycle.depends_on	[]resources.DependsOn	INPUT
        -resources.features.*.lifecycle.depends_on[*]	resources.DependsOn	INPUT
        -resources.features.*.lifecycle.depends_on[*].resource	string	INPUT
         resources.features.*.lifecycle.prevent_destroy	bool	INPUT
         resources.features.*.lineage_context	*ml.LineageContext	ALL
         resources.features.*.lineage_context.job_context	*ml.JobContext	ALL
        @@ -1003,15 +967,6 @@
         resources.features.*.source.request_source.flat_schema.fields[*]	ml.FieldDefinition	ALL
         resources.features.*.source.request_source.flat_schema.fields[*].data_type	ml.ScalarDataType	ALL
         resources.features.*.source.request_source.flat_schema.fields[*].name	string	ALL
        -resources.features.*.source.sdp_source	*ml.SdpSource	ALL
        -resources.features.*.source.sdp_source.dataframe_schema	string	ALL
        -resources.features.*.source.sdp_source.filter_condition	string	ALL
        -resources.features.*.source.sdp_source.input_tables	[]string	ALL
        -resources.features.*.source.sdp_source.input_tables[*]	string	ALL
        -resources.features.*.source.sdp_source.output_table	string	ALL
        -resources.features.*.source.sdp_source.pipeline_id	string	ALL
        -resources.features.*.source.sdp_source.pipeline_state	ml.SdpSourceState	ALL
        -resources.features.*.source.sdp_source.transformation_sql	string	ALL
         resources.features.*.source.stream_source	*ml.StreamSource	ALL
         resources.features.*.source.stream_source.dataframe_schema	string	ALL
         resources.features.*.source.stream_source.filter_condition	string	ALL
        @@ -1045,9 +1000,6 @@
         resources.genie_spaces.*.file_path	string	INPUT
         resources.genie_spaces.*.id	string	INPUT
         resources.genie_spaces.*.lifecycle	resources.Lifecycle	INPUT
        -resources.genie_spaces.*.lifecycle.depends_on	[]resources.DependsOn	INPUT
        -resources.genie_spaces.*.lifecycle.depends_on[*]	resources.DependsOn	INPUT
        -resources.genie_spaces.*.lifecycle.depends_on[*].resource	string	INPUT
         resources.genie_spaces.*.lifecycle.prevent_destroy	bool	INPUT
         resources.genie_spaces.*.modified_status	string	INPUT
         resources.genie_spaces.*.parent_path	string	ALL
        @@ -1092,9 +1044,6 @@
         resources.instance_pools.*.instance_pool_id	string	REMOTE
         resources.instance_pools.*.instance_pool_name	string	ALL
         resources.instance_pools.*.lifecycle	resources.Lifecycle	INPUT
        -resources.instance_pools.*.lifecycle.depends_on	[]resources.DependsOn	INPUT
        -resources.instance_pools.*.lifecycle.depends_on[*]	resources.DependsOn	INPUT
        -resources.instance_pools.*.lifecycle.depends_on[*].resource	string	INPUT
         resources.instance_pools.*.lifecycle.prevent_destroy	bool	INPUT
         resources.instance_pools.*.max_capacity	int	ALL
         resources.instance_pools.*.min_idle_instances	int	ALL
        @@ -1156,9 +1105,6 @@
         resources.job_runs.*.lifecycle	*dresources.JobRunLifecycleState	STATE
         resources.job_runs.*.lifecycle	*resources.JobRunLifecycle	INPUT
         resources.job_runs.*.lifecycle	resources.Lifecycle	INPUT
        -resources.job_runs.*.lifecycle.depends_on	[]resources.DependsOn	INPUT
        -resources.job_runs.*.lifecycle.depends_on[*]	resources.DependsOn	INPUT
        -resources.job_runs.*.lifecycle.depends_on[*].resource	string	INPUT
         resources.job_runs.*.lifecycle.prevent_destroy	bool	INPUT
         resources.job_runs.*.lifecycle.triggers	[]resources.JobRunTrigger	INPUT
         resources.job_runs.*.lifecycle.triggers[*]	resources.JobRunTrigger	INPUT
        @@ -1405,9 +1351,6 @@
         resources.jobs.*.job_clusters[*].serverless_compute_id	string	ALL
         resources.jobs.*.job_id	int64	REMOTE
         resources.jobs.*.lifecycle	resources.Lifecycle	INPUT
        -resources.jobs.*.lifecycle.depends_on	[]resources.DependsOn	INPUT
        -resources.jobs.*.lifecycle.depends_on[*]	resources.DependsOn	INPUT
        -resources.jobs.*.lifecycle.depends_on[*].resource	string	INPUT
         resources.jobs.*.lifecycle.prevent_destroy	bool	INPUT
         resources.jobs.*.max_concurrent_runs	int	ALL
         resources.jobs.*.modified_status	string	INPUT
        @@ -2408,9 +2351,6 @@
         resources.mcp_services.*.config.source_connection.options.*	string	ALL
         resources.mcp_services.*.id	string	INPUT
         resources.mcp_services.*.lifecycle	resources.Lifecycle	INPUT
        -resources.mcp_services.*.lifecycle.depends_on	[]resources.DependsOn	INPUT
        -resources.mcp_services.*.lifecycle.depends_on[*]	resources.DependsOn	INPUT
        -resources.mcp_services.*.lifecycle.depends_on[*].resource	string	INPUT
         resources.mcp_services.*.lifecycle.prevent_destroy	bool	INPUT
         resources.mcp_services.*.mcp_service_id	string	ALL
         resources.mcp_services.*.modified_status	string	INPUT
        @@ -2543,9 +2483,6 @@
         resources.model_provider_services.*.config.targets[*].native_api_types[*]	string	ALL
         resources.model_provider_services.*.id	string	INPUT
         resources.model_provider_services.*.lifecycle	resources.Lifecycle	INPUT
        -resources.model_provider_services.*.lifecycle.depends_on	[]resources.DependsOn	INPUT
        -resources.model_provider_services.*.lifecycle.depends_on[*]	resources.DependsOn	INPUT
        -resources.model_provider_services.*.lifecycle.depends_on[*].resource	string	INPUT
         resources.model_provider_services.*.lifecycle.prevent_destroy	bool	INPUT
         resources.model_provider_services.*.model_provider_service_id	string	ALL
         resources.model_provider_services.*.modified_status	string	INPUT
        @@ -2611,9 +2548,6 @@
... (238 more lines truncated, raise DATABRICKS_CLI_TEST_MAX_LOG to see more)
TestAccept/bundle/refschema/DMS=true: branch ✅ | main (2f505a7) ❌ | latest (v1.22.1) ❌

main (2f505a7):

acceptance_test.go:1311: Diff:
        --- bundle/refschema/out.fields.txt
        +++ /tmp/TestAcceptbundlerefschemaDMS=true1283309226/001/out.fields.txt
        @@ -118,9 +118,6 @@
         resources.apps.*.config.env[*].name	string	ALL
         resources.apps.*.config.env[*].value	string	ALL
         resources.apps.*.config.env[*].value_from	string	ALL
        -resources.apps.*.config.health_check	*resources.AppHealthCheck	ALL
        -resources.apps.*.config.health_check.path	string	ALL
        -resources.apps.*.config.health_check.timeout_seconds	int	ALL
         resources.apps.*.create_time	string	ALL
         resources.apps.*.creator	string	ALL
         resources.apps.*.default_git_source	*apps.GitSource	ALL

latest (v1.22.1):

acceptance_test.go:1311: Diff:
        --- bundle/refschema/out.fields.txt
        +++ /tmp/TestAcceptbundlerefschemaDMS=true2198172470/001/out.fields.txt
        @@ -34,9 +34,6 @@
         resources.alerts.*.file_path	string	INPUT
         resources.alerts.*.id	string	ALL
         resources.alerts.*.lifecycle	resources.Lifecycle	INPUT
        -resources.alerts.*.lifecycle.depends_on	[]resources.DependsOn	INPUT
        -resources.alerts.*.lifecycle.depends_on[*]	resources.DependsOn	INPUT
        -resources.alerts.*.lifecycle.depends_on[*].resource	string	INPUT
         resources.alerts.*.lifecycle.prevent_destroy	bool	INPUT
         resources.alerts.*.lifecycle_state	sql.AlertLifecycleState	ALL
         resources.alerts.*.modified_status	string	INPUT
        @@ -118,9 +115,6 @@
         resources.apps.*.config.env[*].name	string	ALL
         resources.apps.*.config.env[*].value	string	ALL
         resources.apps.*.config.env[*].value_from	string	ALL
        -resources.apps.*.config.health_check	*resources.AppHealthCheck	ALL
        -resources.apps.*.config.health_check.path	string	ALL
        -resources.apps.*.config.health_check.timeout_seconds	int	ALL
         resources.apps.*.create_time	string	ALL
         resources.apps.*.creator	string	ALL
         resources.apps.*.default_git_source	*apps.GitSource	ALL
        @@ -161,9 +155,6 @@
         resources.apps.*.lifecycle	*dresources.StateLifecycle	REMOTE	STATE
         resources.apps.*.lifecycle	*resources.LifecycleWithStarted	INPUT
         resources.apps.*.lifecycle	resources.Lifecycle	INPUT
        -resources.apps.*.lifecycle.depends_on	[]resources.DependsOn	INPUT
        -resources.apps.*.lifecycle.depends_on[*]	resources.DependsOn	INPUT
        -resources.apps.*.lifecycle.depends_on[*].resource	string	INPUT
         resources.apps.*.lifecycle.prevent_destroy	bool	INPUT
         resources.apps.*.lifecycle.started	*bool	ALL
         resources.apps.*.modified_status	string	INPUT
        @@ -283,9 +274,6 @@
         resources.catalogs.*.id	string	INPUT
         resources.catalogs.*.isolation_mode	catalog.CatalogIsolationMode	REMOTE
         resources.catalogs.*.lifecycle	resources.Lifecycle	INPUT
        -resources.catalogs.*.lifecycle.depends_on	[]resources.DependsOn	INPUT
        -resources.catalogs.*.lifecycle.depends_on[*]	resources.DependsOn	INPUT
        -resources.catalogs.*.lifecycle.depends_on[*].resource	string	INPUT
         resources.catalogs.*.lifecycle.prevent_destroy	bool	INPUT
         resources.catalogs.*.managed_encryption_settings	*catalog.EncryptionSettings	ALL
         resources.catalogs.*.managed_encryption_settings.azure_encryption_settings	*catalog.AzureEncryptionSettings	ALL
        @@ -343,9 +331,6 @@
         resources.cluster_policies.*.libraries[*].requirements	string	ALL
         resources.cluster_policies.*.libraries[*].whl	string	ALL
         resources.cluster_policies.*.lifecycle	resources.Lifecycle	INPUT
        -resources.cluster_policies.*.lifecycle.depends_on	[]resources.DependsOn	INPUT
        -resources.cluster_policies.*.lifecycle.depends_on[*]	resources.DependsOn	INPUT
        -resources.cluster_policies.*.lifecycle.depends_on[*].resource	string	INPUT
         resources.cluster_policies.*.lifecycle.prevent_destroy	bool	INPUT
         resources.cluster_policies.*.max_clusters_per_user	int64	ALL
         resources.cluster_policies.*.modified_status	string	INPUT
        @@ -503,9 +488,6 @@
         resources.clusters.*.lifecycle	*dresources.StateLifecycle	REMOTE	STATE
         resources.clusters.*.lifecycle	*resources.LifecycleWithStarted	INPUT
         resources.clusters.*.lifecycle	resources.Lifecycle	INPUT
        -resources.clusters.*.lifecycle.depends_on	[]resources.DependsOn	INPUT
        -resources.clusters.*.lifecycle.depends_on[*]	resources.DependsOn	INPUT
        -resources.clusters.*.lifecycle.depends_on[*].resource	string	INPUT
         resources.clusters.*.lifecycle.prevent_destroy	bool	INPUT
         resources.clusters.*.lifecycle.started	*bool	ALL
         resources.clusters.*.modified_status	string	INPUT
        @@ -672,9 +654,6 @@
         resources.dashboards.*.file_path	string	INPUT
         resources.dashboards.*.id	string	INPUT
         resources.dashboards.*.lifecycle	resources.Lifecycle	INPUT
        -resources.dashboards.*.lifecycle.depends_on	[]resources.DependsOn	INPUT
        -resources.dashboards.*.lifecycle.depends_on[*]	resources.DependsOn	INPUT
        -resources.dashboards.*.lifecycle.depends_on[*].resource	string	INPUT
         resources.dashboards.*.lifecycle.prevent_destroy	bool	INPUT
         resources.dashboards.*.lifecycle_state	dashboards.LifecycleState	ALL
         resources.dashboards.*.modified_status	string	INPUT
        @@ -696,9 +675,6 @@
         resources.database_catalogs.*.database_name	string	ALL
         resources.database_catalogs.*.id	string	INPUT
         resources.database_catalogs.*.lifecycle	resources.Lifecycle	INPUT
        -resources.database_catalogs.*.lifecycle.depends_on	[]resources.DependsOn	INPUT
        -resources.database_catalogs.*.lifecycle.depends_on[*]	resources.DependsOn	INPUT
        -resources.database_catalogs.*.lifecycle.depends_on[*].resource	string	INPUT
         resources.database_catalogs.*.lifecycle.prevent_destroy	bool	INPUT
         resources.database_catalogs.*.modified_status	string	INPUT
         resources.database_catalogs.*.name	string	ALL
        @@ -733,9 +709,6 @@
         resources.database_instances.*.enable_readable_secondaries	bool	ALL
         resources.database_instances.*.id	string	INPUT
         resources.database_instances.*.lifecycle	resources.Lifecycle	INPUT
        -resources.database_instances.*.lifecycle.depends_on	[]resources.DependsOn	INPUT
        -resources.database_instances.*.lifecycle.depends_on[*]	resources.DependsOn	INPUT
        -resources.database_instances.*.lifecycle.depends_on[*].resource	string	INPUT
         resources.database_instances.*.lifecycle.prevent_destroy	bool	INPUT
         resources.database_instances.*.modified_status	string	INPUT
         resources.database_instances.*.name	string	ALL
        @@ -767,9 +740,6 @@
         resources.experiments.*.id	string	INPUT
         resources.experiments.*.last_update_time	int64	REMOTE
         resources.experiments.*.lifecycle	resources.Lifecycle	INPUT
        -resources.experiments.*.lifecycle.depends_on	[]resources.DependsOn	INPUT
        -resources.experiments.*.lifecycle.depends_on[*]	resources.DependsOn	INPUT
        -resources.experiments.*.lifecycle.depends_on[*].resource	string	INPUT
         resources.experiments.*.lifecycle.prevent_destroy	bool	INPUT
         resources.experiments.*.lifecycle_stage	string	REMOTE
         resources.experiments.*.modified_status	string	INPUT
        @@ -853,9 +823,6 @@
         resources.external_locations.*.id	string	INPUT
         resources.external_locations.*.isolation_mode	catalog.IsolationMode	REMOTE
         resources.external_locations.*.lifecycle	resources.Lifecycle	INPUT
        -resources.external_locations.*.lifecycle.depends_on	[]resources.DependsOn	INPUT
        -resources.external_locations.*.lifecycle.depends_on[*]	resources.DependsOn	INPUT
        -resources.external_locations.*.lifecycle.depends_on[*].resource	string	INPUT
         resources.external_locations.*.lifecycle.prevent_destroy	bool	INPUT
         resources.external_locations.*.metastore_id	string	REMOTE
         resources.external_locations.*.modified_status	string	INPUT
        @@ -961,9 +928,6 @@
         resources.features.*.inputs	[]string	ALL
         resources.features.*.inputs[*]	string	ALL
         resources.features.*.lifecycle	resources.Lifecycle	INPUT
        -resources.features.*.lifecycle.depends_on	[]resources.DependsOn	INPUT
        -resources.features.*.lifecycle.depends_on[*]	resources.DependsOn	INPUT
        -resources.features.*.lifecycle.depends_on[*].resource	string	INPUT
         resources.features.*.lifecycle.prevent_destroy	bool	INPUT
         resources.features.*.lineage_context	*ml.LineageContext	ALL
         resources.features.*.lineage_context.job_context	*ml.JobContext	ALL
        @@ -1003,15 +967,6 @@
         resources.features.*.source.request_source.flat_schema.fields[*]	ml.FieldDefinition	ALL
         resources.features.*.source.request_source.flat_schema.fields[*].data_type	ml.ScalarDataType	ALL
         resources.features.*.source.request_source.flat_schema.fields[*].name	string	ALL
        -resources.features.*.source.sdp_source	*ml.SdpSource	ALL
        -resources.features.*.source.sdp_source.dataframe_schema	string	ALL
        -resources.features.*.source.sdp_source.filter_condition	string	ALL
        -resources.features.*.source.sdp_source.input_tables	[]string	ALL
        -resources.features.*.source.sdp_source.input_tables[*]	string	ALL
        -resources.features.*.source.sdp_source.output_table	string	ALL
        -resources.features.*.source.sdp_source.pipeline_id	string	ALL
        -resources.features.*.source.sdp_source.pipeline_state	ml.SdpSourceState	ALL
        -resources.features.*.source.sdp_source.transformation_sql	string	ALL
         resources.features.*.source.stream_source	*ml.StreamSource	ALL
         resources.features.*.source.stream_source.dataframe_schema	string	ALL
         resources.features.*.source.stream_source.filter_condition	string	ALL
        @@ -1045,9 +1000,6 @@
         resources.genie_spaces.*.file_path	string	INPUT
         resources.genie_spaces.*.id	string	INPUT
         resources.genie_spaces.*.lifecycle	resources.Lifecycle	INPUT
        -resources.genie_spaces.*.lifecycle.depends_on	[]resources.DependsOn	INPUT
        -resources.genie_spaces.*.lifecycle.depends_on[*]	resources.DependsOn	INPUT
        -resources.genie_spaces.*.lifecycle.depends_on[*].resource	string	INPUT
         resources.genie_spaces.*.lifecycle.prevent_destroy	bool	INPUT
         resources.genie_spaces.*.modified_status	string	INPUT
         resources.genie_spaces.*.parent_path	string	ALL
        @@ -1092,9 +1044,6 @@
         resources.instance_pools.*.instance_pool_id	string	REMOTE
         resources.instance_pools.*.instance_pool_name	string	ALL
         resources.instance_pools.*.lifecycle	resources.Lifecycle	INPUT
        -resources.instance_pools.*.lifecycle.depends_on	[]resources.DependsOn	INPUT
        -resources.instance_pools.*.lifecycle.depends_on[*]	resources.DependsOn	INPUT
        -resources.instance_pools.*.lifecycle.depends_on[*].resource	string	INPUT
         resources.instance_pools.*.lifecycle.prevent_destroy	bool	INPUT
         resources.instance_pools.*.max_capacity	int	ALL
         resources.instance_pools.*.min_idle_instances	int	ALL
        @@ -1156,9 +1105,6 @@
         resources.job_runs.*.lifecycle	*dresources.JobRunLifecycleState	STATE
         resources.job_runs.*.lifecycle	*resources.JobRunLifecycle	INPUT
         resources.job_runs.*.lifecycle	resources.Lifecycle	INPUT
        -resources.job_runs.*.lifecycle.depends_on	[]resources.DependsOn	INPUT
        -resources.job_runs.*.lifecycle.depends_on[*]	resources.DependsOn	INPUT
        -resources.job_runs.*.lifecycle.depends_on[*].resource	string	INPUT
         resources.job_runs.*.lifecycle.prevent_destroy	bool	INPUT
         resources.job_runs.*.lifecycle.triggers	[]resources.JobRunTrigger	INPUT
         resources.job_runs.*.lifecycle.triggers[*]	resources.JobRunTrigger	INPUT
        @@ -1405,9 +1351,6 @@
         resources.jobs.*.job_clusters[*].serverless_compute_id	string	ALL
         resources.jobs.*.job_id	int64	REMOTE
         resources.jobs.*.lifecycle	resources.Lifecycle	INPUT
        -resources.jobs.*.lifecycle.depends_on	[]resources.DependsOn	INPUT
        -resources.jobs.*.lifecycle.depends_on[*]	resources.DependsOn	INPUT
        -resources.jobs.*.lifecycle.depends_on[*].resource	string	INPUT
         resources.jobs.*.lifecycle.prevent_destroy	bool	INPUT
         resources.jobs.*.max_concurrent_runs	int	ALL
         resources.jobs.*.modified_status	string	INPUT
        @@ -2408,9 +2351,6 @@
         resources.mcp_services.*.config.source_connection.options.*	string	ALL
         resources.mcp_services.*.id	string	INPUT
         resources.mcp_services.*.lifecycle	resources.Lifecycle	INPUT
        -resources.mcp_services.*.lifecycle.depends_on	[]resources.DependsOn	INPUT
        -resources.mcp_services.*.lifecycle.depends_on[*]	resources.DependsOn	INPUT
        -resources.mcp_services.*.lifecycle.depends_on[*].resource	string	INPUT
         resources.mcp_services.*.lifecycle.prevent_destroy	bool	INPUT
         resources.mcp_services.*.mcp_service_id	string	ALL
         resources.mcp_services.*.modified_status	string	INPUT
        @@ -2543,9 +2483,6 @@
         resources.model_provider_services.*.config.targets[*].native_api_types[*]	string	ALL
         resources.model_provider_services.*.id	string	INPUT
         resources.model_provider_services.*.lifecycle	resources.Lifecycle	INPUT
        -resources.model_provider_services.*.lifecycle.depends_on	[]resources.DependsOn	INPUT
        -resources.model_provider_services.*.lifecycle.depends_on[*]	resources.DependsOn	INPUT
        -resources.model_provider_services.*.lifecycle.depends_on[*].resource	string	INPUT
         resources.model_provider_services.*.lifecycle.prevent_destroy	bool	INPUT
         resources.model_provider_services.*.model_provider_service_id	string	ALL
         resources.model_provider_services.*.modified_status	string	INPUT
        @@ -2611,9 +2548,6 @@
... (238 more lines truncated, raise DATABRICKS_CLI_TEST_MAX_LOG to see more)
TestAccept/bundle/resources/apps/inline_config/DMS=: branch ✅ | main (2f505a7) ❌ | latest (v1.22.1) ❌

main (2f505a7):

acceptance_test.go:1311: Diff:
        --- bundle/resources/apps/inline_config/output.txt
        +++ /tmp/TestAcceptbundleresourcesappsinline_configDMS=1505538809/002/output.txt
        @@ -1,11 +1,27 @@
         
         >>> [CLI] bundle deploy
        +Warning: unknown field: health_check
        +  at resources.apps.myapp.config
        +  in databricks.yml:17:9
        +
         Uploading bundle files to /Workspace/Users/[USERNAME]/.bundle/app-inline-config-[UNIQUE_NAME]/default/files...
         Created apps.myapp
         Files: 4 uploaded, 0 deleted
         Resources: 1 created, 0 changed, 0 deleted, 0 unchanged
        +Warning: unknown field: health_check
        +  at resources.apps.myapp.config
        +  in databricks.yml:17:9
         
        +Warning: unknown field: health_check
        +  at resources.apps.myapp.config
        +  in databricks.yml:17:9
        +
        +
         >>> [CLI] apps get-deployment [UNIQUE_NAME] [DEPLOYMENT_ID]
        +Warning: unknown field: health_check
        +  at resources.apps.myapp.config
        +  in databricks.yml:17:9
        +
         {
           "command": [
             "flask",
        @@ -21,13 +31,14 @@
               "name": "ANOTHER_VAR"
             }
           ],
        -  "health_check": {
        -    "path": "/health",
        -    "timeout": "120s"
        -  }
        +  "health_check": null
         }
         
         >>> [CLI] bundle destroy --auto-approve
        +Warning: unknown field: health_check
        +  at resources.apps.myapp.config
        +  in databricks.yml:17:9
        +
         The following resources will be deleted:
           delete resources.apps.myapp

latest (v1.22.1): same output as main (2f505a7)

TestAccept/bundle/resources/apps/inline_config/DMS=true: branch ✅ | main (2f505a7) ❌ | latest (v1.22.1) ❌

main (2f505a7):

acceptance_test.go:1311: Diff:
        --- bundle/resources/apps/inline_config/output.txt
        +++ /tmp/TestAcceptbundleresourcesappsinline_configDMS=true3189690895/002/output.txt
        @@ -1,11 +1,27 @@
         
         >>> [CLI] bundle deploy
        +Warning: unknown field: health_check
        +  at resources.apps.myapp.config
        +  in databricks.yml:17:9
        +
         Uploading bundle files to /Workspace/Users/[USERNAME]/.bundle/app-inline-config-[UNIQUE_NAME]/default/files...
         Created apps.myapp
         Files: 4 uploaded, 0 deleted
         Resources: 1 created, 0 changed, 0 deleted, 0 unchanged
        +Warning: unknown field: health_check
        +  at resources.apps.myapp.config
        +  in databricks.yml:17:9
         
        +Warning: unknown field: health_check
        +  at resources.apps.myapp.config
        +  in databricks.yml:17:9
        +
        +
         >>> [CLI] apps get-deployment [UNIQUE_NAME] [DEPLOYMENT_ID]
        +Warning: unknown field: health_check
        +  at resources.apps.myapp.config
        +  in databricks.yml:17:9
        +
         {
           "command": [
             "flask",
        @@ -21,13 +31,14 @@
               "name": "ANOTHER_VAR"
             }
           ],
        -  "health_check": {
        -    "path": "/health",
        -    "timeout": "120s"
        -  }
        +  "health_check": null
         }
         
         >>> [CLI] bundle destroy --auto-approve
        +Warning: unknown field: health_check
        +  at resources.apps.myapp.config
        +  in databricks.yml:17:9
        +
         The following resources will be deleted:
           delete resources.apps.myapp
         
        
FAIL

latest (v1.22.1): same output as main (2f505a7)

@arushiagarwal-db
arushiagarwal-db marked this pull request as ready for review October 21, 2026 16:52
@arushiagarwal-db
arushiagarwal-db requested review from a team as code owners October 21, 2026 16:52
Co-authored-by: Isaac <no-reply@databricks.com>
@eng-dev-ecosystem-bot

eng-dev-ecosystem-bot commented Oct 21, 2026 •

Copy link
Copy Markdown
Collaborator

Integration test report

Commit: 3a187f6

Run: 40431162278

Env ❌​FAIL ✅​pass 🙈​skip Time
❌​ aws linux-2core-8gb 4 280 16 19:17
❌​ aws-windows-latest-4core-16gb 4 282 14 20:02
❌​ azure linux-2core-8gb 4 279 16 16:50
❌​ azure-windows-latest-4core-16gb 4 281 14 21:36
❌​ gcp linux-2core-8gb 4 280 16 17:54
❌​ gcp-windows-latest-4core-16gb 4 282 14 17:46
Test Name aws linux-2core-8gb aws-windows-latest-4core-16gb azure linux-2core-8gb azure-windows-latest-4core-16gb gcp linux-2core-8gb gcp-windows-latest-4core-16gb
❌​ TestAccept ❌​F ❌​F ❌​F ❌​F ❌​F ❌​F
❌​ TestAccept/bundle/resources/apps/inline_config ❌​F ❌​F ❌​F ❌​F ❌​F ❌​F
❌​ TestAccept/bundle/resources/apps/inline_config/DMS= ❌​F ❌​F ❌​F ❌​F ❌​F ❌​F
❌​ TestAccept/bundle/resources/apps/inline_config/DMS=true ❌​F ❌​F ❌​F ❌​F ❌​F ❌​F

arushiagarwal-db and others added 2 commits October 27, 2026 00:37
Co-authored-by: Isaac <no-reply@databricks.com>

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

DABs DABs related issues

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants