From 95dc70fd1c69e321793977e7f3c6316644cfc035 Mon Sep 17 00:00:00 2001 From: Denis Bilenko Date: Mon, 23 Mar 2026 17:25:47 +0100 Subject: [PATCH 1/5] Warn on delete/recreate for all resources by default, with safe-list exceptions Invert the deploy/destroy approval logic: instead of listing specific resource types to warn about (schemas, volumes, pipelines, dashboards), warn for all resource types by default and maintain an allowlist of resources that are safe to delete/recreate without data loss. Resources now safe-listed (no warning): jobs, model_serving_endpoints, clusters, apps, sql_warehouses, external_locations, synced_database_tables, postgres_endpoints. All other resources (15 types) now trigger a warning, including newly warned: catalogs, secret_scopes, database_instances, database_catalogs, postgres_projects, postgres_branches, models, registered_models, experiments, quality_monitors, alerts. Co-authored-by: Isaac --- .../bundle/apps/job_permissions/output.txt | 2 + .../cli_defaults/output.txt | 3 +- .../job_pipeline_task/output.txt | 3 +- .../multiple_resources/output.txt | 7 +- .../pipeline_fields/output.txt | 3 +- .../validation_errors/output.txt | 3 +- .../deploy/snapshot-comparison/output.txt | 6 +- .../bind/dashboard/recreation/output.txt | 4 +- .../bind/pipelines/recreate/output.txt | 12 +-- .../deployment/bind/secret-scope/output.txt | 6 +- .../deployment/bind/secret-scope/script | 2 +- .../deployment/unbind/grants/output.txt | 2 +- .../deployment/unbind/permissions/output.txt | 2 + .../bundle/destroy/all-resources/output.txt | 7 +- .../lifecycle/prevent-destroy/out.direct.txt | 20 ++-- .../prevent-destroy/out.terraform.txt | 20 ++-- acceptance/bundle/migrate/runas/output.txt | 3 +- .../pipelines_recreate/output.txt | 9 +- .../resource_deps/remote_app_url/output.txt | 3 +- .../out.destroy.direct.txt | 7 +- .../out.destroy.terraform.txt | 7 +- .../bundle/resources/alerts/basic/output.txt | 3 + .../catalogs/auto-approve/output.txt | 3 +- .../resources/catalogs/basic/output.txt | 3 + .../catalogs/with-schemas/output.txt | 3 +- .../change-embed-credentials/output.txt | 3 + .../dashboards/change-name/output.txt | 3 + .../dashboards/change-parent-path/output.txt | 7 +- .../change-serialized-dashboard/output.txt | 3 + .../dataset-catalog-schema/output.txt | 3 + .../resources/dashboards/destroy/output.txt | 3 + .../dashboards/detect-change/output.txt | 3 + .../dashboards/nested-folders/output.txt | 3 + .../resources/dashboards/simple/output.txt | 3 + .../simple_outside_bundle_root/output.txt | 3 + .../dashboards/simple_syncroot/output.txt | 3 + .../database_catalogs/basic/output.txt | 4 + .../single-instance/output.txt | 3 + .../resources/experiments/basic/output.txt | 9 +- .../bundle/resources/experiments/basic/script | 2 +- .../resources/external_locations/output.txt | 3 + .../resources/grants/catalogs/output.txt | 3 + .../grants/registered_models/output.txt | 3 +- .../grants/schemas/all_privileges/output.txt | 2 +- .../schemas/change_privilege/output.txt | 2 +- .../schemas/duplicate_principals/output.txt | 2 +- .../schemas/duplicate_privileges/output.txt | 2 +- .../resources/grants/volumes/output.txt | 7 +- .../bundle/resources/models/basic/output.txt | 9 +- .../bundle/resources/models/basic/script | 2 +- .../apps/current_can_manage/output.txt | 2 + .../apps/other_can_manage/output.txt | 2 + .../clusters/current_can_manage/output.txt | 2 + .../current_can_manage/output.txt | 3 + .../experiments/current_can_manage/output.txt | 3 + .../jobs/current_can_manage/output.txt | 2 + .../jobs/current_can_manage_run/output.txt | 2 + .../jobs/current_is_owner/output.txt | 2 + .../jobs/delete_one/local/output.txt | 2 + .../jobs/other_can_manage/output.txt | 2 + .../jobs/other_can_manage_run/output.txt | 2 + .../jobs/other_is_owner/output.txt | 2 + .../permissions/jobs/viewers/output.txt | 2 + .../models/current_can_manage/output.txt | 3 + .../pipelines/current_can_manage/output.txt | 3 +- .../pipelines/current_is_owner/output.txt | 3 +- .../pipelines/empty_list/output.txt | 3 +- .../pipelines/other_can_manage/output.txt | 3 +- .../pipelines/other_is_owner/output.txt | 3 +- .../current_can_manage/output.txt | 3 + .../current_can_manage/output.txt | 2 + .../permissions/target_permissions/output.txt | 2 + .../allow-duplicate-names/output.txt | 3 +- .../pipelines/auto-approve/output.txt | 9 +- .../pipelines/lakeflow-pipeline/output.txt | 3 +- .../change-ingestion-definition/output.txt | 9 +- .../recreate-keys/change-storage/output.txt | 9 +- .../resources/pipelines/recreate/output.txt | 13 +-- .../resources/pipelines/update/output.txt | 3 +- .../postgres_branches/basic/output.txt | 4 + .../postgres_branches/recreate/output.txt | 8 ++ .../update_protected/output.txt | 4 + .../postgres_endpoints/basic/output.txt | 4 + .../postgres_endpoints/recreate/output.txt | 4 + .../update_autoscaling/output.txt | 4 + .../postgres_projects/basic/output.txt | 3 + .../postgres_projects/recreate/output.txt | 7 ++ .../update_display_name/output.txt | 3 + .../change_assets_dir/out.deploy.direct.txt | 6 +- .../out.deploy.terraform.txt | 2 +- .../change_assets_dir/output.txt | 3 + .../quality_monitors/change_assets_dir/script | 2 +- .../change_output_schema_name/output.txt | 3 + .../change_table_name/out.deploy.direct.txt | 6 +- .../change_table_name/output.txt | 3 + .../quality_monitors/change_table_name/script | 2 +- .../quality_monitors/create/output.txt | 3 + .../registered_models/basic/output.txt | 25 ++++- .../resources/registered_models/basic/script | 2 +- .../resources/schemas/auto-approve/output.txt | 10 +- .../resources/schemas/recreate/output.txt | 3 +- .../resources/secret_scopes/basic/output.txt | 9 +- .../resources/secret_scopes/basic/script | 2 +- .../secret_scopes/delete_scope/output.txt | 9 +- .../secret_scopes/delete_scope/script | 2 +- .../permissions-collapse/output.txt | 3 + .../secret_scopes/permissions/output.txt | 9 +- .../secret_scopes/permissions/script | 2 +- .../synced_database_tables/basic/output.txt | 4 + .../volumes/change-comment/output.txt | 5 +- .../volumes/change-schema-name/output.txt | 6 +- .../volumes/set-storage-location/output.txt | 2 +- .../bundle/state/state_present/output.txt | 2 +- .../bundle/summary/modified_status/output.txt | 8 +- .../integration_classic/output.txt | 6 +- .../bundle/user_agent/simple/output.txt | 2 +- .../workspace/apps/run-local-node/output.txt | 12 +-- .../pipelines/deploy/auto-approve/output.txt | 12 +-- .../pipelines/destroy/auto-approve/output.txt | 3 +- .../destroy/destroy-pipeline/output.txt | 3 +- .../pipelines/destroy/force-lock/output.txt | 3 +- acceptance/pipelines/e2e/output.txt | 3 +- bundle/phases/deploy.go | 96 ++++++++++++------- bundle/phases/destroy.go | 33 +++---- bundle/phases/messages.go | 31 +----- bundle/phases/util.go | 25 ----- 126 files changed, 414 insertions(+), 324 deletions(-) delete mode 100644 bundle/phases/util.go diff --git a/acceptance/bundle/apps/job_permissions/output.txt b/acceptance/bundle/apps/job_permissions/output.txt index 14aa7b12c2..a0d5e63be2 100644 --- a/acceptance/bundle/apps/job_permissions/output.txt +++ b/acceptance/bundle/apps/job_permissions/output.txt @@ -33,6 +33,8 @@ The following resources will be deleted: delete resources.apps.my_app delete resources.jobs.my_job +The following resources may contain data that will be lost upon deletion: + All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/[UNIQUE_NAME]/default Deleting files... diff --git a/acceptance/bundle/config-remote-sync/cli_defaults/output.txt b/acceptance/bundle/config-remote-sync/cli_defaults/output.txt index 307a945ea9..f012be47d6 100644 --- a/acceptance/bundle/config-remote-sync/cli_defaults/output.txt +++ b/acceptance/bundle/config-remote-sync/cli_defaults/output.txt @@ -56,8 +56,7 @@ The following resources will be deleted: delete resources.jobs.job2 delete resources.pipelines.pipeline1 -This action will result in the deletion of the following Lakeflow Spark Declarative Pipelines along with the -Streaming Tables (STs) and Materialized Views (MVs) managed by them: +The following resources may contain data that will be lost upon deletion: delete resources.pipelines.pipeline1 All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/test-bundle-[UNIQUE_NAME]/default diff --git a/acceptance/bundle/config-remote-sync/job_pipeline_task/output.txt b/acceptance/bundle/config-remote-sync/job_pipeline_task/output.txt index 625902a6e7..6bf94b2fe3 100644 --- a/acceptance/bundle/config-remote-sync/job_pipeline_task/output.txt +++ b/acceptance/bundle/config-remote-sync/job_pipeline_task/output.txt @@ -39,8 +39,7 @@ The following resources will be deleted: delete resources.jobs.my_job delete resources.pipelines.my_pipeline -This action will result in the deletion of the following Lakeflow Spark Declarative Pipelines along with the -Streaming Tables (STs) and Materialized Views (MVs) managed by them: +The following resources may contain data that will be lost upon deletion: delete resources.pipelines.my_pipeline All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/test-bundle-[UNIQUE_NAME]/default diff --git a/acceptance/bundle/config-remote-sync/multiple_resources/output.txt b/acceptance/bundle/config-remote-sync/multiple_resources/output.txt index d7d8709ffd..8d2caff50f 100644 --- a/acceptance/bundle/config-remote-sync/multiple_resources/output.txt +++ b/acceptance/bundle/config-remote-sync/multiple_resources/output.txt @@ -57,10 +57,9 @@ The following resources will be deleted: delete resources.sql_warehouses.test_warehouse delete resources.volumes.test_volume -This action will result in the deletion of the following volumes. -For managed volumes, the files stored in the volume are also deleted from your -cloud tenant within 30 days. For external volumes, the metadata about the volume -is removed from the catalog, but the underlying files are not deleted: +The following resources may contain data that will be lost upon deletion: + delete resources.experiments.test_experiment + delete resources.registered_models.test_model delete resources.volumes.test_volume All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/test-bundle-[UNIQUE_NAME]/default diff --git a/acceptance/bundle/config-remote-sync/pipeline_fields/output.txt b/acceptance/bundle/config-remote-sync/pipeline_fields/output.txt index ea2c6a557b..b112bfa2ab 100644 --- a/acceptance/bundle/config-remote-sync/pipeline_fields/output.txt +++ b/acceptance/bundle/config-remote-sync/pipeline_fields/output.txt @@ -55,8 +55,7 @@ Resource: resources.pipelines.my_pipeline The following resources will be deleted: delete resources.pipelines.my_pipeline -This action will result in the deletion of the following Lakeflow Spark Declarative Pipelines along with the -Streaming Tables (STs) and Materialized Views (MVs) managed by them: +The following resources may contain data that will be lost upon deletion: delete resources.pipelines.my_pipeline All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/test-bundle-[UNIQUE_NAME]/default diff --git a/acceptance/bundle/config-remote-sync/validation_errors/output.txt b/acceptance/bundle/config-remote-sync/validation_errors/output.txt index c4ce29efa0..a888dd788e 100644 --- a/acceptance/bundle/config-remote-sync/validation_errors/output.txt +++ b/acceptance/bundle/config-remote-sync/validation_errors/output.txt @@ -50,8 +50,7 @@ The following resources will be deleted: delete resources.jobs.my_job delete resources.pipelines.my_pipeline -This action will result in the deletion of the following Lakeflow Spark Declarative Pipelines along with the -Streaming Tables (STs) and Materialized Views (MVs) managed by them: +The following resources may contain data that will be lost upon deletion: delete resources.pipelines.my_pipeline All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/test-bundle-[UNIQUE_NAME]/default diff --git a/acceptance/bundle/deploy/snapshot-comparison/output.txt b/acceptance/bundle/deploy/snapshot-comparison/output.txt index 1db9fa5024..2967de0388 100644 --- a/acceptance/bundle/deploy/snapshot-comparison/output.txt +++ b/acceptance/bundle/deploy/snapshot-comparison/output.txt @@ -44,8 +44,7 @@ The following resources will be deleted: delete resources.jobs.test_job delete resources.pipelines.test_pipeline -This action will result in the deletion of the following Lakeflow Spark Declarative Pipelines along with the -Streaming Tables (STs) and Materialized Views (MVs) managed by them: +The following resources may contain data that will be lost upon deletion: delete resources.pipelines.test_pipeline All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/snapshot-test-1-[UNIQUE_NAME]/default @@ -59,8 +58,7 @@ The following resources will be deleted: delete resources.jobs.test_job delete resources.pipelines.test_pipeline -This action will result in the deletion of the following Lakeflow Spark Declarative Pipelines along with the -Streaming Tables (STs) and Materialized Views (MVs) managed by them: +The following resources may contain data that will be lost upon deletion: delete resources.pipelines.test_pipeline All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/snapshot-test-2-[UNIQUE_NAME]/default diff --git a/acceptance/bundle/deployment/bind/dashboard/recreation/output.txt b/acceptance/bundle/deployment/bind/dashboard/recreation/output.txt index 99c26a8ccc..bbe6dbd08f 100644 --- a/acceptance/bundle/deployment/bind/dashboard/recreation/output.txt +++ b/acceptance/bundle/deployment/bind/dashboard/recreation/output.txt @@ -15,8 +15,8 @@ Plan: 1 to add, 0 to change, 1 to delete, 0 unchanged >>> errcode [CLI] bundle deploy Uploading bundle files to /Workspace/Users/[USERNAME]/.bundle/test-bundle-[UNIQUE_NAME]/default/files... -This action will result in the deletion or recreation of the following dashboards. -This will result in changed IDs and permanent URLs of the dashboards that will be recreated: +This action will result in the deletion or recreation of the following resources. +Deleted or recreated resources may result in data loss or other irreversible consequences: recreate resources.dashboards.dashboard1 Error: the deployment requires destructive actions, but current console does not support prompting. Please specify --auto-approve if you would like to skip prompts and proceed diff --git a/acceptance/bundle/deployment/bind/pipelines/recreate/output.txt b/acceptance/bundle/deployment/bind/pipelines/recreate/output.txt index af42322dee..14bc5c9a0a 100644 --- a/acceptance/bundle/deployment/bind/pipelines/recreate/output.txt +++ b/acceptance/bundle/deployment/bind/pipelines/recreate/output.txt @@ -11,10 +11,8 @@ Plan: 1 to add, 0 to change, 1 to delete, 0 unchanged >>> musterr [CLI] bundle deploy Uploading bundle files to /Workspace/Users/[USERNAME]/.bundle/test-pipeline-recreate-[UNIQUE_NAME]/default/files... -This action will result in the deletion or recreation of the following Lakeflow Spark Declarative Pipelines along with the -Streaming Tables (STs) and Materialized Views (MVs) managed by them. Recreating the pipelines will -restore the defined STs and MVs through full refresh. Note that recreation is necessary when pipeline -properties such as the 'catalog' or 'storage' are changed: +This action will result in the deletion or recreation of the following resources. +Deleted or recreated resources may result in data loss or other irreversible consequences: recreate resources.pipelines.foo Error: the deployment requires destructive actions, but current console does not support prompting. Please specify --auto-approve if you would like to skip prompts and proceed @@ -22,10 +20,8 @@ Error: the deployment requires destructive actions, but current console does not >>> [CLI] bundle deploy --auto-approve Uploading bundle files to /Workspace/Users/[USERNAME]/.bundle/test-pipeline-recreate-[UNIQUE_NAME]/default/files... -This action will result in the deletion or recreation of the following Lakeflow Spark Declarative Pipelines along with the -Streaming Tables (STs) and Materialized Views (MVs) managed by them. Recreating the pipelines will -restore the defined STs and MVs through full refresh. Note that recreation is necessary when pipeline -properties such as the 'catalog' or 'storage' are changed: +This action will result in the deletion or recreation of the following resources. +Deleted or recreated resources may result in data loss or other irreversible consequences: recreate resources.pipelines.foo Deploying resources... Updating deployment state... diff --git a/acceptance/bundle/deployment/bind/secret-scope/output.txt b/acceptance/bundle/deployment/bind/secret-scope/output.txt index fb0f3ac11f..d17133a1c1 100644 --- a/acceptance/bundle/deployment/bind/secret-scope/output.txt +++ b/acceptance/bundle/deployment/bind/secret-scope/output.txt @@ -6,8 +6,12 @@ Updating deployment state... Successfully bound secret_scope with an id 'test-secret-scope-[UNIQUE_NAME]' Run 'bundle deploy' to deploy changes to your workspace ->>> [CLI] bundle deploy +>>> [CLI] bundle deploy --auto-approve Uploading bundle files to /Workspace/Users/[USERNAME]/.bundle/bind-secret-scope-test-[UNIQUE_NAME]/default/files... + +This action will result in the deletion or recreation of the following resources. +Deleted or recreated resources may result in data loss or other irreversible consequences: + recreate resources.secret_scopes.secret_scope1 Deploying resources... Updating deployment state... Deployment complete! diff --git a/acceptance/bundle/deployment/bind/secret-scope/script b/acceptance/bundle/deployment/bind/secret-scope/script index c4e80009e6..d8cf9c6e2c 100644 --- a/acceptance/bundle/deployment/bind/secret-scope/script +++ b/acceptance/bundle/deployment/bind/secret-scope/script @@ -12,7 +12,7 @@ trap cleanup EXIT trace $CLI bundle deployment bind secret_scope1 "${SECRET_SCOPE_NAME}" --auto-approve -trace $CLI bundle deploy +trace $CLI bundle deploy --auto-approve trace $CLI secrets list-scopes -o json | jq --arg value ${SECRET_SCOPE_NAME} '.[] | select(.name == $value)' diff --git a/acceptance/bundle/deployment/unbind/grants/output.txt b/acceptance/bundle/deployment/unbind/grants/output.txt index 073bad2581..de14375ae5 100644 --- a/acceptance/bundle/deployment/unbind/grants/output.txt +++ b/acceptance/bundle/deployment/unbind/grants/output.txt @@ -37,7 +37,7 @@ Deployment complete! The following resources will be deleted: delete resources.schemas.schema_1 -This action will result in the deletion of the following UC schemas. Any underlying data may be lost: +The following resources may contain data that will be lost upon deletion: delete resources.schemas.schema_1 All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/[UNIQUE_NAME] diff --git a/acceptance/bundle/deployment/unbind/permissions/output.txt b/acceptance/bundle/deployment/unbind/permissions/output.txt index a7e824374b..4faa518a51 100644 --- a/acceptance/bundle/deployment/unbind/permissions/output.txt +++ b/acceptance/bundle/deployment/unbind/permissions/output.txt @@ -43,6 +43,8 @@ Deployment complete! The following resources will be deleted: delete resources.jobs.job_1 +The following resources may contain data that will be lost upon deletion: + All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/[UNIQUE_NAME] Deleting files... diff --git a/acceptance/bundle/destroy/all-resources/output.txt b/acceptance/bundle/destroy/all-resources/output.txt index 5fd8d432a8..8ff63e4f7b 100644 --- a/acceptance/bundle/destroy/all-resources/output.txt +++ b/acceptance/bundle/destroy/all-resources/output.txt @@ -10,12 +10,9 @@ The following resources will be deleted: delete resources.pipelines.my_pipeline delete resources.schemas.my_schema -This action will result in the deletion of the following UC schemas. Any underlying data may be lost: - delete resources.schemas.my_schema - -This action will result in the deletion of the following Lakeflow Spark Declarative Pipelines along with the -Streaming Tables (STs) and Materialized Views (MVs) managed by them: +The following resources may contain data that will be lost upon deletion: delete resources.pipelines.my_pipeline + delete resources.schemas.my_schema All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/test-bundle/default diff --git a/acceptance/bundle/lifecycle/prevent-destroy/out.direct.txt b/acceptance/bundle/lifecycle/prevent-destroy/out.direct.txt index a100c8774f..8326d97144 100644 --- a/acceptance/bundle/lifecycle/prevent-destroy/out.direct.txt +++ b/acceptance/bundle/lifecycle/prevent-destroy/out.direct.txt @@ -35,14 +35,10 @@ Plan: 2 to add, 0 to change, 2 to delete, 0 unchanged >>> [CLI] bundle deploy --auto-approve Uploading bundle files to /Workspace/Users/[USERNAME]/.bundle/prevent-destroy/default/files... -This action will result in the deletion or recreation of the following UC schemas. Any underlying data may be lost: - recreate resources.schemas.my_schema - -This action will result in the deletion or recreation of the following Lakeflow Spark Declarative Pipelines along with the -Streaming Tables (STs) and Materialized Views (MVs) managed by them. Recreating the pipelines will -restore the defined STs and MVs through full refresh. Note that recreation is necessary when pipeline -properties such as the 'catalog' or 'storage' are changed: +This action will result in the deletion or recreation of the following resources. +Deleted or recreated resources may result in data loss or other irreversible consequences: recreate resources.pipelines.my_pipelines + recreate resources.schemas.my_schema Deploying resources... Updating deployment state... Deployment complete! @@ -56,14 +52,10 @@ Plan: 0 to add, 0 to change, 2 to delete, 0 unchanged >>> [CLI] bundle deploy --auto-approve Uploading bundle files to /Workspace/Users/[USERNAME]/.bundle/prevent-destroy/default/files... -This action will result in the deletion or recreation of the following UC schemas. Any underlying data may be lost: - delete resources.schemas.my_schema - -This action will result in the deletion or recreation of the following Lakeflow Spark Declarative Pipelines along with the -Streaming Tables (STs) and Materialized Views (MVs) managed by them. Recreating the pipelines will -restore the defined STs and MVs through full refresh. Note that recreation is necessary when pipeline -properties such as the 'catalog' or 'storage' are changed: +This action will result in the deletion or recreation of the following resources. +Deleted or recreated resources may result in data loss or other irreversible consequences: delete resources.pipelines.my_pipelines + delete resources.schemas.my_schema Deploying resources... Updating deployment state... Deployment complete! diff --git a/acceptance/bundle/lifecycle/prevent-destroy/out.terraform.txt b/acceptance/bundle/lifecycle/prevent-destroy/out.terraform.txt index f36fe5c8f3..e7aafa5185 100644 --- a/acceptance/bundle/lifecycle/prevent-destroy/out.terraform.txt +++ b/acceptance/bundle/lifecycle/prevent-destroy/out.terraform.txt @@ -119,14 +119,10 @@ Plan: 2 to add, 0 to change, 2 to delete, 0 unchanged >>> [CLI] bundle deploy --auto-approve Uploading bundle files to /Workspace/Users/[USERNAME]/.bundle/prevent-destroy/default/files... -This action will result in the deletion or recreation of the following UC schemas. Any underlying data may be lost: - recreate resources.schemas.my_schema - -This action will result in the deletion or recreation of the following Lakeflow Spark Declarative Pipelines along with the -Streaming Tables (STs) and Materialized Views (MVs) managed by them. Recreating the pipelines will -restore the defined STs and MVs through full refresh. Note that recreation is necessary when pipeline -properties such as the 'catalog' or 'storage' are changed: +This action will result in the deletion or recreation of the following resources. +Deleted or recreated resources may result in data loss or other irreversible consequences: recreate resources.pipelines.my_pipelines + recreate resources.schemas.my_schema Deploying resources... Updating deployment state... Deployment complete! @@ -140,14 +136,10 @@ Plan: 0 to add, 0 to change, 2 to delete, 0 unchanged >>> [CLI] bundle deploy --auto-approve Uploading bundle files to /Workspace/Users/[USERNAME]/.bundle/prevent-destroy/default/files... -This action will result in the deletion or recreation of the following UC schemas. Any underlying data may be lost: - delete resources.schemas.my_schema - -This action will result in the deletion or recreation of the following Lakeflow Spark Declarative Pipelines along with the -Streaming Tables (STs) and Materialized Views (MVs) managed by them. Recreating the pipelines will -restore the defined STs and MVs through full refresh. Note that recreation is necessary when pipeline -properties such as the 'catalog' or 'storage' are changed: +This action will result in the deletion or recreation of the following resources. +Deleted or recreated resources may result in data loss or other irreversible consequences: delete resources.pipelines.my_pipelines + delete resources.schemas.my_schema Deploying resources... Updating deployment state... Deployment complete! diff --git a/acceptance/bundle/migrate/runas/output.txt b/acceptance/bundle/migrate/runas/output.txt index 74b9a0217f..4176c40a62 100644 --- a/acceptance/bundle/migrate/runas/output.txt +++ b/acceptance/bundle/migrate/runas/output.txt @@ -151,8 +151,7 @@ See https://docs.databricks.com/dev-tools/bundles/permissions.html to learn more The following resources will be deleted: delete resources.pipelines.foo -This action will result in the deletion of the following Lakeflow Spark Declarative Pipelines along with the -Streaming Tables (STs) and Materialized Views (MVs) managed by them: +The following resources may contain data that will be lost upon deletion: delete resources.pipelines.foo All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/dabs_revenue-[UNIQUE_NAME]/production diff --git a/acceptance/bundle/resource_deps/pipelines_recreate/output.txt b/acceptance/bundle/resource_deps/pipelines_recreate/output.txt index 7a8592a7cc..6ddeff6f28 100644 --- a/acceptance/bundle/resource_deps/pipelines_recreate/output.txt +++ b/acceptance/bundle/resource_deps/pipelines_recreate/output.txt @@ -28,10 +28,8 @@ Plan: 1 to add, 1 to change, 1 to delete, 0 unchanged >>> [CLI] bundle deploy --auto-approve Uploading bundle files to /Workspace/Users/[USERNAME]/.bundle/test-bundle/default/files... -This action will result in the deletion or recreation of the following Lakeflow Spark Declarative Pipelines along with the -Streaming Tables (STs) and Materialized Views (MVs) managed by them. Recreating the pipelines will -restore the defined STs and MVs through full refresh. Note that recreation is necessary when pipeline -properties such as the 'catalog' or 'storage' are changed: +This action will result in the deletion or recreation of the following resources. +Deleted or recreated resources may result in data loss or other irreversible consequences: recreate resources.pipelines.foo Deploying resources... Updating deployment state... @@ -107,8 +105,7 @@ The following resources will be deleted: delete resources.jobs.bar delete resources.pipelines.foo -This action will result in the deletion of the following Lakeflow Spark Declarative Pipelines along with the -Streaming Tables (STs) and Materialized Views (MVs) managed by them: +The following resources may contain data that will be lost upon deletion: delete resources.pipelines.foo All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/test-bundle/default diff --git a/acceptance/bundle/resource_deps/remote_app_url/output.txt b/acceptance/bundle/resource_deps/remote_app_url/output.txt index 81b300ab11..04d9683431 100644 --- a/acceptance/bundle/resource_deps/remote_app_url/output.txt +++ b/acceptance/bundle/resource_deps/remote_app_url/output.txt @@ -82,8 +82,7 @@ The following resources will be deleted: delete resources.apps.myapp delete resources.pipelines.mypipeline -This action will result in the deletion of the following Lakeflow Spark Declarative Pipelines along with the -Streaming Tables (STs) and Materialized Views (MVs) managed by them: +The following resources may contain data that will be lost upon deletion: delete resources.pipelines.mypipeline All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/test-bundle/default diff --git a/acceptance/bundle/resource_deps/remote_field_storage_location/out.destroy.direct.txt b/acceptance/bundle/resource_deps/remote_field_storage_location/out.destroy.direct.txt index b4d427d485..9a9d7c04d7 100644 --- a/acceptance/bundle/resource_deps/remote_field_storage_location/out.destroy.direct.txt +++ b/acceptance/bundle/resource_deps/remote_field_storage_location/out.destroy.direct.txt @@ -3,13 +3,8 @@ The following resources will be deleted: delete resources.volumes.bar delete resources.volumes.foo -This action will result in the deletion of the following UC schemas. Any underlying data may be lost: +The following resources may contain data that will be lost upon deletion: delete resources.schemas.my - -This action will result in the deletion of the following volumes. -For managed volumes, the files stored in the volume are also deleted from your -cloud tenant within 30 days. For external volumes, the metadata about the volume -is removed from the catalog, but the underlying files are not deleted: delete resources.volumes.bar delete resources.volumes.foo diff --git a/acceptance/bundle/resource_deps/remote_field_storage_location/out.destroy.terraform.txt b/acceptance/bundle/resource_deps/remote_field_storage_location/out.destroy.terraform.txt index 8f89cda64c..68623a03bb 100644 --- a/acceptance/bundle/resource_deps/remote_field_storage_location/out.destroy.terraform.txt +++ b/acceptance/bundle/resource_deps/remote_field_storage_location/out.destroy.terraform.txt @@ -2,13 +2,8 @@ The following resources will be deleted: delete resources.schemas.my delete resources.volumes.bar -This action will result in the deletion of the following UC schemas. Any underlying data may be lost: +The following resources may contain data that will be lost upon deletion: delete resources.schemas.my - -This action will result in the deletion of the following volumes. -For managed volumes, the files stored in the volume are also deleted from your -cloud tenant within 30 days. For external volumes, the metadata about the volume -is removed from the catalog, but the underlying files are not deleted: delete resources.volumes.bar All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/testbundle-[UNIQUE_NAME]/default diff --git a/acceptance/bundle/resources/alerts/basic/output.txt b/acceptance/bundle/resources/alerts/basic/output.txt index 3a0c3cb7e3..118c7d9299 100644 --- a/acceptance/bundle/resources/alerts/basic/output.txt +++ b/acceptance/bundle/resources/alerts/basic/output.txt @@ -56,6 +56,9 @@ Plan: 0 to add, 0 to change, 0 to delete, 2 unchanged The following resources will be deleted: delete resources.alerts.myalert +The following resources may contain data that will be lost upon deletion: + delete resources.alerts.myalert + All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/alerts-basic-[UNIQUE_NAME]/default Deleting files... diff --git a/acceptance/bundle/resources/catalogs/auto-approve/output.txt b/acceptance/bundle/resources/catalogs/auto-approve/output.txt index e0576f1b9e..6bedeadb4a 100644 --- a/acceptance/bundle/resources/catalogs/auto-approve/output.txt +++ b/acceptance/bundle/resources/catalogs/auto-approve/output.txt @@ -48,7 +48,8 @@ The following resources will be deleted: delete resources.catalogs.bar delete resources.schemas.foo -This action will result in the deletion of the following UC schemas. Any underlying data may be lost: +The following resources may contain data that will be lost upon deletion: + delete resources.catalogs.bar delete resources.schemas.foo All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/[UNIQUE_NAME] diff --git a/acceptance/bundle/resources/catalogs/basic/output.txt b/acceptance/bundle/resources/catalogs/basic/output.txt index 1e70309242..68d7ade795 100644 --- a/acceptance/bundle/resources/catalogs/basic/output.txt +++ b/acceptance/bundle/resources/catalogs/basic/output.txt @@ -36,6 +36,9 @@ Deployment complete! The following resources will be deleted: delete resources.catalogs.test_catalog +The following resources may contain data that will be lost upon deletion: + delete resources.catalogs.test_catalog + All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/[UNIQUE_NAME] Deleting files... diff --git a/acceptance/bundle/resources/catalogs/with-schemas/output.txt b/acceptance/bundle/resources/catalogs/with-schemas/output.txt index 8034f5eb2f..9c5c51b82b 100644 --- a/acceptance/bundle/resources/catalogs/with-schemas/output.txt +++ b/acceptance/bundle/resources/catalogs/with-schemas/output.txt @@ -52,7 +52,8 @@ The following resources will be deleted: delete resources.catalogs.test_catalog delete resources.schemas.test_schema -This action will result in the deletion of the following UC schemas. Any underlying data may be lost: +The following resources may contain data that will be lost upon deletion: + delete resources.catalogs.test_catalog delete resources.schemas.test_schema All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/[UNIQUE_NAME] diff --git a/acceptance/bundle/resources/dashboards/change-embed-credentials/output.txt b/acceptance/bundle/resources/dashboards/change-embed-credentials/output.txt index 8b5d7dd6bf..72b5cc7f82 100644 --- a/acceptance/bundle/resources/dashboards/change-embed-credentials/output.txt +++ b/acceptance/bundle/resources/dashboards/change-embed-credentials/output.txt @@ -57,6 +57,9 @@ Deployment complete! The following resources will be deleted: delete resources.dashboards.my_dashboard +The following resources may contain data that will be lost upon deletion: + delete resources.dashboards.my_dashboard + All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/change-embed-credentials-[UNIQUE_NAME]/default Deleting files... diff --git a/acceptance/bundle/resources/dashboards/change-name/output.txt b/acceptance/bundle/resources/dashboards/change-name/output.txt index e2c01c3274..283798213b 100644 --- a/acceptance/bundle/resources/dashboards/change-name/output.txt +++ b/acceptance/bundle/resources/dashboards/change-name/output.txt @@ -45,6 +45,9 @@ Deployment complete! The following resources will be deleted: delete resources.dashboards.my_dashboard +The following resources may contain data that will be lost upon deletion: + delete resources.dashboards.my_dashboard + All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/change-name-[UNIQUE_NAME]/default Deleting files... diff --git a/acceptance/bundle/resources/dashboards/change-parent-path/output.txt b/acceptance/bundle/resources/dashboards/change-parent-path/output.txt index a7b26e91c5..f70414d313 100644 --- a/acceptance/bundle/resources/dashboards/change-parent-path/output.txt +++ b/acceptance/bundle/resources/dashboards/change-parent-path/output.txt @@ -28,8 +28,8 @@ Plan: 1 to add, 0 to change, 1 to delete, 0 unchanged >>> [CLI] bundle deploy --auto-approve Uploading bundle files to /Workspace/Users/[USERNAME]/.bundle/change-parent-path-[UNIQUE_NAME]/default/files... -This action will result in the deletion or recreation of the following dashboards. -This will result in changed IDs and permanent URLs of the dashboards that will be recreated: +This action will result in the deletion or recreation of the following resources. +Deleted or recreated resources may result in data loss or other irreversible consequences: recreate resources.dashboards.my_dashboard Deploying resources... Updating deployment state... @@ -49,6 +49,9 @@ Deployment complete! The following resources will be deleted: delete resources.dashboards.my_dashboard +The following resources may contain data that will be lost upon deletion: + delete resources.dashboards.my_dashboard + All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/change-parent-path-[UNIQUE_NAME]/default Deleting files... diff --git a/acceptance/bundle/resources/dashboards/change-serialized-dashboard/output.txt b/acceptance/bundle/resources/dashboards/change-serialized-dashboard/output.txt index 6b4f7051dc..07591f5158 100644 --- a/acceptance/bundle/resources/dashboards/change-serialized-dashboard/output.txt +++ b/acceptance/bundle/resources/dashboards/change-serialized-dashboard/output.txt @@ -57,6 +57,9 @@ Deployment complete! The following resources will be deleted: delete resources.dashboards.my_dashboard +The following resources may contain data that will be lost upon deletion: + delete resources.dashboards.my_dashboard + All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/change-serialized-dashboard-[UNIQUE_NAME]/default Deleting files... diff --git a/acceptance/bundle/resources/dashboards/dataset-catalog-schema/output.txt b/acceptance/bundle/resources/dashboards/dataset-catalog-schema/output.txt index 4c7aa9d490..619d9c8ac2 100644 --- a/acceptance/bundle/resources/dashboards/dataset-catalog-schema/output.txt +++ b/acceptance/bundle/resources/dashboards/dataset-catalog-schema/output.txt @@ -24,6 +24,9 @@ Deployment complete! The following resources will be deleted: delete resources.dashboards.dashboard1 +The following resources may contain data that will be lost upon deletion: + delete resources.dashboards.dashboard1 + All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/deploy-dashboard-dataset-test-[UNIQUE_NAME]/default Deleting files... diff --git a/acceptance/bundle/resources/dashboards/destroy/output.txt b/acceptance/bundle/resources/dashboards/destroy/output.txt index 8a8d8889a9..e9d6c4ba43 100644 --- a/acceptance/bundle/resources/dashboards/destroy/output.txt +++ b/acceptance/bundle/resources/dashboards/destroy/output.txt @@ -15,6 +15,9 @@ Deployment complete! The following resources will be deleted: delete resources.dashboards.dashboard1 +The following resources may contain data that will be lost upon deletion: + delete resources.dashboards.dashboard1 + All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/destroy-dashboard-[UNIQUE_NAME]/default Deleting files... diff --git a/acceptance/bundle/resources/dashboards/detect-change/output.txt b/acceptance/bundle/resources/dashboards/detect-change/output.txt index 53179be516..2da7a7dde4 100644 --- a/acceptance/bundle/resources/dashboards/detect-change/output.txt +++ b/acceptance/bundle/resources/dashboards/detect-change/output.txt @@ -107,6 +107,9 @@ Deployment complete! The following resources will be deleted: delete resources.dashboards.file_reference +The following resources may contain data that will be lost upon deletion: + delete resources.dashboards.file_reference + All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/[UNIQUE_NAME] Deleting files... diff --git a/acceptance/bundle/resources/dashboards/nested-folders/output.txt b/acceptance/bundle/resources/dashboards/nested-folders/output.txt index c1c2a79eb0..21348ef0dd 100644 --- a/acceptance/bundle/resources/dashboards/nested-folders/output.txt +++ b/acceptance/bundle/resources/dashboards/nested-folders/output.txt @@ -25,6 +25,9 @@ Deployment complete! The following resources will be deleted: delete resources.dashboards.dashboard1 +The following resources may contain data that will be lost upon deletion: + delete resources.dashboards.dashboard1 + All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/deploy-dashboard-nested-folders-[UNIQUE_NAME]/default Deleting files... diff --git a/acceptance/bundle/resources/dashboards/simple/output.txt b/acceptance/bundle/resources/dashboards/simple/output.txt index 7464a2e50f..d4f7722a3e 100644 --- a/acceptance/bundle/resources/dashboards/simple/output.txt +++ b/acceptance/bundle/resources/dashboards/simple/output.txt @@ -19,6 +19,9 @@ Deployment complete! The following resources will be deleted: delete resources.dashboards.dashboard1 +The following resources may contain data that will be lost upon deletion: + delete resources.dashboards.dashboard1 + All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/deploy-dashboard-test-[UNIQUE_NAME]/default Deleting files... diff --git a/acceptance/bundle/resources/dashboards/simple_outside_bundle_root/output.txt b/acceptance/bundle/resources/dashboards/simple_outside_bundle_root/output.txt index 6e16fb6ef0..bdfc3571db 100644 --- a/acceptance/bundle/resources/dashboards/simple_outside_bundle_root/output.txt +++ b/acceptance/bundle/resources/dashboards/simple_outside_bundle_root/output.txt @@ -17,6 +17,9 @@ Deployment complete! The following resources will be deleted: delete resources.dashboards.dashboard1 +The following resources may contain data that will be lost upon deletion: + delete resources.dashboards.dashboard1 + All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/deploy-dashboard-outside-bundle-root-[UNIQUE_NAME]/default Deleting files... diff --git a/acceptance/bundle/resources/dashboards/simple_syncroot/output.txt b/acceptance/bundle/resources/dashboards/simple_syncroot/output.txt index 8bb6baeca5..90648a47e9 100644 --- a/acceptance/bundle/resources/dashboards/simple_syncroot/output.txt +++ b/acceptance/bundle/resources/dashboards/simple_syncroot/output.txt @@ -17,6 +17,9 @@ Deployment complete! The following resources will be deleted: delete resources.dashboards.dashboard1 +The following resources may contain data that will be lost upon deletion: + delete resources.dashboards.dashboard1 + All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/deploy-dashboard-test-[UNIQUE_NAME]/default Deleting files... diff --git a/acceptance/bundle/resources/database_catalogs/basic/output.txt b/acceptance/bundle/resources/database_catalogs/basic/output.txt index 46105a3e8c..c5f97ec46f 100644 --- a/acceptance/bundle/resources/database_catalogs/basic/output.txt +++ b/acceptance/bundle/resources/database_catalogs/basic/output.txt @@ -47,6 +47,10 @@ The following resources will be deleted: delete resources.database_catalogs.my_catalog delete resources.database_instances.my_instance +The following resources may contain data that will be lost upon deletion: + delete resources.database_catalogs.my_catalog + delete resources.database_instances.my_instance + All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/deploy-lakebase-catalog-[UNIQUE_NAME]/default Deleting files... diff --git a/acceptance/bundle/resources/database_instances/single-instance/output.txt b/acceptance/bundle/resources/database_instances/single-instance/output.txt index 8a08317172..e3722e0c5f 100644 --- a/acceptance/bundle/resources/database_instances/single-instance/output.txt +++ b/acceptance/bundle/resources/database_instances/single-instance/output.txt @@ -59,6 +59,9 @@ Resources: The following resources will be deleted: delete resources.database_instances.my_database +The following resources may contain data that will be lost upon deletion: + delete resources.database_instances.my_database + All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/deploy-lakebase-single-instance-[UNIQUE_NAME]/default Deleting files... diff --git a/acceptance/bundle/resources/experiments/basic/output.txt b/acceptance/bundle/resources/experiments/basic/output.txt index 4b5fd591df..d4f92aacf8 100644 --- a/acceptance/bundle/resources/experiments/basic/output.txt +++ b/acceptance/bundle/resources/experiments/basic/output.txt @@ -107,8 +107,12 @@ recreate experiments.my_experiment Plan: 1 to add, 0 to change, 1 to delete, 0 unchanged ->>> [CLI] bundle deploy +>>> [CLI] bundle deploy --auto-approve Uploading bundle files to /Workspace/Users/[USERNAME]/.bundle/experiment-basic-[UNIQUE_NAME]/default/files... + +This action will result in the deletion or recreation of the following resources. +Deleted or recreated resources may result in data loss or other irreversible consequences: + recreate resources.experiments.my_experiment Deploying resources... Updating deployment state... Deployment complete! @@ -192,6 +196,9 @@ Deployment complete! The following resources will be deleted: delete resources.experiments.my_experiment +The following resources may contain data that will be lost upon deletion: + delete resources.experiments.my_experiment + All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/experiment-basic-[UNIQUE_NAME]/default Deleting files... diff --git a/acceptance/bundle/resources/experiments/basic/script b/acceptance/bundle/resources/experiments/basic/script index 6bb96db86d..a963e183d9 100755 --- a/acceptance/bundle/resources/experiments/basic/script +++ b/acceptance/bundle/resources/experiments/basic/script @@ -25,7 +25,7 @@ title "updating the artifact location should cause a recreation" trace export EXPERIMENT_ARTIFACT_LOCATION="s3://new-${UNIQUE_NAME}" trace envsubst < templates/one_tag.tmpl > databricks.yml trace $CLI bundle plan -trace $CLI bundle deploy +trace $CLI bundle deploy --auto-approve experiment_id=$($CLI bundle summary --output json | jq -r '.resources.experiments.my_experiment.id') trace $CLI experiments get-experiment $experiment_id | jq '.experiment | {name, artifact_location, tags}' diff --git a/acceptance/bundle/resources/external_locations/output.txt b/acceptance/bundle/resources/external_locations/output.txt index c69c74e2c7..9776472308 100644 --- a/acceptance/bundle/resources/external_locations/output.txt +++ b/acceptance/bundle/resources/external_locations/output.txt @@ -105,6 +105,9 @@ The following resources will be deleted: delete resources.catalogs.test_catalog delete resources.external_locations.test_location +The following resources may contain data that will be lost upon deletion: + delete resources.catalogs.test_catalog + All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/[UNIQUE_NAME] Deleting files... diff --git a/acceptance/bundle/resources/grants/catalogs/output.txt b/acceptance/bundle/resources/grants/catalogs/output.txt index 067bd10a70..8d37fba3dc 100644 --- a/acceptance/bundle/resources/grants/catalogs/output.txt +++ b/acceptance/bundle/resources/grants/catalogs/output.txt @@ -74,6 +74,9 @@ Deployment complete! The following resources will be deleted: delete resources.catalogs.grants_catalog +The following resources may contain data that will be lost upon deletion: + delete resources.catalogs.grants_catalog + All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/catalog-grants-[UNIQUE_NAME]/default Deleting files... diff --git a/acceptance/bundle/resources/grants/registered_models/output.txt b/acceptance/bundle/resources/grants/registered_models/output.txt index cac10d7691..c5b3aac338 100644 --- a/acceptance/bundle/resources/grants/registered_models/output.txt +++ b/acceptance/bundle/resources/grants/registered_models/output.txt @@ -28,7 +28,8 @@ The following resources will be deleted: delete resources.registered_models.my_registered_model delete resources.schemas.my_schema -This action will result in the deletion of the following UC schemas. Any underlying data may be lost: +The following resources may contain data that will be lost upon deletion: + delete resources.registered_models.my_registered_model delete resources.schemas.my_schema All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/deploy-registered-models-basic-[UNIQUE_NAME]/default diff --git a/acceptance/bundle/resources/grants/schemas/all_privileges/output.txt b/acceptance/bundle/resources/grants/schemas/all_privileges/output.txt index e88c30715f..47685a2227 100644 --- a/acceptance/bundle/resources/grants/schemas/all_privileges/output.txt +++ b/acceptance/bundle/resources/grants/schemas/all_privileges/output.txt @@ -7,7 +7,7 @@ Deployment complete! The following resources will be deleted: delete resources.schemas.apps_schema -This action will result in the deletion of the following UC schemas. Any underlying data may be lost: +The following resources may contain data that will be lost upon deletion: delete resources.schemas.apps_schema All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/schema-dup-grants-[UNIQUE_NAME]/default diff --git a/acceptance/bundle/resources/grants/schemas/change_privilege/output.txt b/acceptance/bundle/resources/grants/schemas/change_privilege/output.txt index eb8ee21d64..464f6ca605 100644 --- a/acceptance/bundle/resources/grants/schemas/change_privilege/output.txt +++ b/acceptance/bundle/resources/grants/schemas/change_privilege/output.txt @@ -74,7 +74,7 @@ Deployment complete! The following resources will be deleted: delete resources.schemas.grants_schema -This action will result in the deletion of the following UC schemas. Any underlying data may be lost: +The following resources may contain data that will be lost upon deletion: delete resources.schemas.grants_schema All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/schema-grants-[UNIQUE_NAME]/default diff --git a/acceptance/bundle/resources/grants/schemas/duplicate_principals/output.txt b/acceptance/bundle/resources/grants/schemas/duplicate_principals/output.txt index 3b1393adf5..35bc0d6ab5 100644 --- a/acceptance/bundle/resources/grants/schemas/duplicate_principals/output.txt +++ b/acceptance/bundle/resources/grants/schemas/duplicate_principals/output.txt @@ -11,7 +11,7 @@ Deployment complete! The following resources will be deleted: delete resources.schemas.apps_schema -This action will result in the deletion of the following UC schemas. Any underlying data may be lost: +The following resources may contain data that will be lost upon deletion: delete resources.schemas.apps_schema All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/schema-dup-grants-[UNIQUE_NAME]/default diff --git a/acceptance/bundle/resources/grants/schemas/duplicate_privileges/output.txt b/acceptance/bundle/resources/grants/schemas/duplicate_privileges/output.txt index a537487dbd..b12abb2192 100644 --- a/acceptance/bundle/resources/grants/schemas/duplicate_privileges/output.txt +++ b/acceptance/bundle/resources/grants/schemas/duplicate_privileges/output.txt @@ -9,7 +9,7 @@ Deployment complete! The following resources will be deleted: delete resources.schemas.apps_schema -This action will result in the deletion of the following UC schemas. Any underlying data may be lost: +The following resources may contain data that will be lost upon deletion: delete resources.schemas.apps_schema All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/schema-dup-grants-[UNIQUE_NAME]/default diff --git a/acceptance/bundle/resources/grants/volumes/output.txt b/acceptance/bundle/resources/grants/volumes/output.txt index 4cd3f2f749..1e121055b9 100644 --- a/acceptance/bundle/resources/grants/volumes/output.txt +++ b/acceptance/bundle/resources/grants/volumes/output.txt @@ -50,13 +50,8 @@ The following resources will be deleted: delete resources.schemas.grants_schema delete resources.volumes.grants_volume -This action will result in the deletion of the following UC schemas. Any underlying data may be lost: +The following resources may contain data that will be lost upon deletion: delete resources.schemas.grants_schema - -This action will result in the deletion of the following volumes. -For managed volumes, the files stored in the volume are also deleted from your -cloud tenant within 30 days. For external volumes, the metadata about the volume -is removed from the catalog, but the underlying files are not deleted: delete resources.volumes.grants_volume All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/schema-grants-[UNIQUE_NAME]/default diff --git a/acceptance/bundle/resources/models/basic/output.txt b/acceptance/bundle/resources/models/basic/output.txt index 929a8a4cdf..aa62bd0bf2 100644 --- a/acceptance/bundle/resources/models/basic/output.txt +++ b/acceptance/bundle/resources/models/basic/output.txt @@ -61,8 +61,12 @@ recreate models.my_model Plan: 1 to add, 0 to change, 1 to delete, 0 unchanged ->>> [CLI] bundle deploy +>>> [CLI] bundle deploy --auto-approve Uploading bundle files to /Workspace/Users/[USERNAME]/.bundle/deploy-models-basic-[UNIQUE_NAME]/default/files... + +This action will result in the deletion or recreation of the following resources. +Deleted or recreated resources may result in data loss or other irreversible consequences: + recreate resources.models.my_model Deploying resources... Updating deployment state... Deployment complete! @@ -104,6 +108,9 @@ Deployment complete! The following resources will be deleted: delete resources.models.my_model +The following resources may contain data that will be lost upon deletion: + delete resources.models.my_model + All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/deploy-models-basic-[UNIQUE_NAME]/default Deleting files... diff --git a/acceptance/bundle/resources/models/basic/script b/acceptance/bundle/resources/models/basic/script index 175f546340..e504fde9da 100644 --- a/acceptance/bundle/resources/models/basic/script +++ b/acceptance/bundle/resources/models/basic/script @@ -22,7 +22,7 @@ trace export MODEL_NAME=new-name-$UNIQUE_NAME envsubst < templates/one_tag.tmpl > databricks.yml title "update the name, this should recreate the model with the new name" trace $CLI bundle plan -trace $CLI bundle deploy +trace $CLI bundle deploy --auto-approve trace $CLI model-registry get-model $MODEL_NAME | jq '.registered_model_databricks | {name, description, tags}' title "add a new tag, this should be a no-op; terraform does make an update request but since update request has no tags in it, it does nothing; direct skips request completely" diff --git a/acceptance/bundle/resources/permissions/apps/current_can_manage/output.txt b/acceptance/bundle/resources/permissions/apps/current_can_manage/output.txt index bb226ca3f9..e76248f8fd 100644 --- a/acceptance/bundle/resources/permissions/apps/current_can_manage/output.txt +++ b/acceptance/bundle/resources/permissions/apps/current_can_manage/output.txt @@ -29,6 +29,8 @@ Deployment complete! The following resources will be deleted: delete resources.apps.foo +The following resources may contain data that will be lost upon deletion: + All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/test-bundle/default Deleting files... diff --git a/acceptance/bundle/resources/permissions/apps/other_can_manage/output.txt b/acceptance/bundle/resources/permissions/apps/other_can_manage/output.txt index bb226ca3f9..e76248f8fd 100644 --- a/acceptance/bundle/resources/permissions/apps/other_can_manage/output.txt +++ b/acceptance/bundle/resources/permissions/apps/other_can_manage/output.txt @@ -29,6 +29,8 @@ Deployment complete! The following resources will be deleted: delete resources.apps.foo +The following resources may contain data that will be lost upon deletion: + All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/test-bundle/default Deleting files... diff --git a/acceptance/bundle/resources/permissions/clusters/current_can_manage/output.txt b/acceptance/bundle/resources/permissions/clusters/current_can_manage/output.txt index 09a0645407..dbd612f12a 100644 --- a/acceptance/bundle/resources/permissions/clusters/current_can_manage/output.txt +++ b/acceptance/bundle/resources/permissions/clusters/current_can_manage/output.txt @@ -29,6 +29,8 @@ Deployment complete! The following resources will be deleted: delete resources.clusters.foo +The following resources may contain data that will be lost upon deletion: + All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/test-bundle/default Deleting files... diff --git a/acceptance/bundle/resources/permissions/database_instances/current_can_manage/output.txt b/acceptance/bundle/resources/permissions/database_instances/current_can_manage/output.txt index 092bc944ed..e74d0c5b3b 100644 --- a/acceptance/bundle/resources/permissions/database_instances/current_can_manage/output.txt +++ b/acceptance/bundle/resources/permissions/database_instances/current_can_manage/output.txt @@ -61,6 +61,9 @@ Warning: unknown field: instance_profile_arn The following resources will be deleted: delete resources.database_instances.foo +The following resources may contain data that will be lost upon deletion: + delete resources.database_instances.foo + All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/test-bundle/default Deleting files... diff --git a/acceptance/bundle/resources/permissions/experiments/current_can_manage/output.txt b/acceptance/bundle/resources/permissions/experiments/current_can_manage/output.txt index 02c1a3930f..96fd31bfde 100644 --- a/acceptance/bundle/resources/permissions/experiments/current_can_manage/output.txt +++ b/acceptance/bundle/resources/permissions/experiments/current_can_manage/output.txt @@ -29,6 +29,9 @@ Deployment complete! The following resources will be deleted: delete resources.experiments.foo +The following resources may contain data that will be lost upon deletion: + delete resources.experiments.foo + All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/test-bundle/default Deleting files... diff --git a/acceptance/bundle/resources/permissions/jobs/current_can_manage/output.txt b/acceptance/bundle/resources/permissions/jobs/current_can_manage/output.txt index 8d21073e1c..ed46d2c449 100644 --- a/acceptance/bundle/resources/permissions/jobs/current_can_manage/output.txt +++ b/acceptance/bundle/resources/permissions/jobs/current_can_manage/output.txt @@ -29,6 +29,8 @@ Deployment complete! The following resources will be deleted: delete resources.jobs.foo +The following resources may contain data that will be lost upon deletion: + All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/test-bundle/default Deleting files... diff --git a/acceptance/bundle/resources/permissions/jobs/current_can_manage_run/output.txt b/acceptance/bundle/resources/permissions/jobs/current_can_manage_run/output.txt index 91420fa952..cc6582b1c9 100644 --- a/acceptance/bundle/resources/permissions/jobs/current_can_manage_run/output.txt +++ b/acceptance/bundle/resources/permissions/jobs/current_can_manage_run/output.txt @@ -36,6 +36,8 @@ Deployment complete! The following resources will be deleted: delete resources.jobs.interim_gold_layer_job +The following resources may contain data that will be lost upon deletion: + All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/test-bundle-[UNIQUE_NAME]/green Deleting files... diff --git a/acceptance/bundle/resources/permissions/jobs/current_is_owner/output.txt b/acceptance/bundle/resources/permissions/jobs/current_is_owner/output.txt index 1e0de88140..ba417d4a52 100644 --- a/acceptance/bundle/resources/permissions/jobs/current_is_owner/output.txt +++ b/acceptance/bundle/resources/permissions/jobs/current_is_owner/output.txt @@ -17,6 +17,8 @@ Deployment complete! The following resources will be deleted: delete resources.jobs.foo +The following resources may contain data that will be lost upon deletion: + All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/test-bundle/default Deleting files... diff --git a/acceptance/bundle/resources/permissions/jobs/delete_one/local/output.txt b/acceptance/bundle/resources/permissions/jobs/delete_one/local/output.txt index cefbf2e73e..3082efd03e 100644 --- a/acceptance/bundle/resources/permissions/jobs/delete_one/local/output.txt +++ b/acceptance/bundle/resources/permissions/jobs/delete_one/local/output.txt @@ -29,6 +29,8 @@ Deployment complete! The following resources will be deleted: delete resources.jobs.job_with_permissions +The following resources may contain data that will be lost upon deletion: + All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/test-bundle-[UNIQUE_NAME]/default Deleting files... diff --git a/acceptance/bundle/resources/permissions/jobs/other_can_manage/output.txt b/acceptance/bundle/resources/permissions/jobs/other_can_manage/output.txt index 8d21073e1c..ed46d2c449 100644 --- a/acceptance/bundle/resources/permissions/jobs/other_can_manage/output.txt +++ b/acceptance/bundle/resources/permissions/jobs/other_can_manage/output.txt @@ -29,6 +29,8 @@ Deployment complete! The following resources will be deleted: delete resources.jobs.foo +The following resources may contain data that will be lost upon deletion: + All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/test-bundle/default Deleting files... diff --git a/acceptance/bundle/resources/permissions/jobs/other_can_manage_run/output.txt b/acceptance/bundle/resources/permissions/jobs/other_can_manage_run/output.txt index d4faa3048f..c206a3150d 100644 --- a/acceptance/bundle/resources/permissions/jobs/other_can_manage_run/output.txt +++ b/acceptance/bundle/resources/permissions/jobs/other_can_manage_run/output.txt @@ -38,6 +38,8 @@ Deployment complete! The following resources will be deleted: delete resources.jobs.interim_gold_layer_job +The following resources may contain data that will be lost upon deletion: + All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/test-bundle-[UNIQUE_NAME]/green Deleting files... diff --git a/acceptance/bundle/resources/permissions/jobs/other_is_owner/output.txt b/acceptance/bundle/resources/permissions/jobs/other_is_owner/output.txt index 3c6e977515..69d5064e91 100644 --- a/acceptance/bundle/resources/permissions/jobs/other_is_owner/output.txt +++ b/acceptance/bundle/resources/permissions/jobs/other_is_owner/output.txt @@ -21,6 +21,8 @@ Deployment complete! The following resources will be deleted: delete resources.jobs.foo +The following resources may contain data that will be lost upon deletion: + All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/test-bundle/default Deleting files... diff --git a/acceptance/bundle/resources/permissions/jobs/viewers/output.txt b/acceptance/bundle/resources/permissions/jobs/viewers/output.txt index a880e3e813..f814c8d10e 100644 --- a/acceptance/bundle/resources/permissions/jobs/viewers/output.txt +++ b/acceptance/bundle/resources/permissions/jobs/viewers/output.txt @@ -29,6 +29,8 @@ Deployment complete! The following resources will be deleted: delete resources.jobs.foo +The following resources may contain data that will be lost upon deletion: + All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/test-bundle/default Deleting files... diff --git a/acceptance/bundle/resources/permissions/models/current_can_manage/output.txt b/acceptance/bundle/resources/permissions/models/current_can_manage/output.txt index fc2daa5fa4..a7739fd6cb 100644 --- a/acceptance/bundle/resources/permissions/models/current_can_manage/output.txt +++ b/acceptance/bundle/resources/permissions/models/current_can_manage/output.txt @@ -23,6 +23,9 @@ The following resources will be deleted: delete resources.models.foo +The following resources may contain data that will be lost upon deletion: + delete resources.models.foo + All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/test-bundle/default Deleting files... diff --git a/acceptance/bundle/resources/permissions/pipelines/current_can_manage/output.txt b/acceptance/bundle/resources/permissions/pipelines/current_can_manage/output.txt index 2e15e6e410..ff492334ec 100644 --- a/acceptance/bundle/resources/permissions/pipelines/current_can_manage/output.txt +++ b/acceptance/bundle/resources/permissions/pipelines/current_can_manage/output.txt @@ -29,8 +29,7 @@ Deployment complete! The following resources will be deleted: delete resources.pipelines.foo -This action will result in the deletion of the following Lakeflow Spark Declarative Pipelines along with the -Streaming Tables (STs) and Materialized Views (MVs) managed by them: +The following resources may contain data that will be lost upon deletion: delete resources.pipelines.foo All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/test-bundle/default diff --git a/acceptance/bundle/resources/permissions/pipelines/current_is_owner/output.txt b/acceptance/bundle/resources/permissions/pipelines/current_is_owner/output.txt index 89f7921475..acb849789c 100644 --- a/acceptance/bundle/resources/permissions/pipelines/current_is_owner/output.txt +++ b/acceptance/bundle/resources/permissions/pipelines/current_is_owner/output.txt @@ -17,8 +17,7 @@ Deployment complete! The following resources will be deleted: delete resources.pipelines.foo -This action will result in the deletion of the following Lakeflow Spark Declarative Pipelines along with the -Streaming Tables (STs) and Materialized Views (MVs) managed by them: +The following resources may contain data that will be lost upon deletion: delete resources.pipelines.foo All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/test-bundle/default diff --git a/acceptance/bundle/resources/permissions/pipelines/empty_list/output.txt b/acceptance/bundle/resources/permissions/pipelines/empty_list/output.txt index 2f3ce99457..c1190cad3b 100644 --- a/acceptance/bundle/resources/permissions/pipelines/empty_list/output.txt +++ b/acceptance/bundle/resources/permissions/pipelines/empty_list/output.txt @@ -12,8 +12,7 @@ Deployment complete! The following resources will be deleted: delete resources.pipelines.foo -This action will result in the deletion of the following Lakeflow Spark Declarative Pipelines along with the -Streaming Tables (STs) and Materialized Views (MVs) managed by them: +The following resources may contain data that will be lost upon deletion: delete resources.pipelines.foo All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/test-bundle/default diff --git a/acceptance/bundle/resources/permissions/pipelines/other_can_manage/output.txt b/acceptance/bundle/resources/permissions/pipelines/other_can_manage/output.txt index 2e15e6e410..ff492334ec 100644 --- a/acceptance/bundle/resources/permissions/pipelines/other_can_manage/output.txt +++ b/acceptance/bundle/resources/permissions/pipelines/other_can_manage/output.txt @@ -29,8 +29,7 @@ Deployment complete! The following resources will be deleted: delete resources.pipelines.foo -This action will result in the deletion of the following Lakeflow Spark Declarative Pipelines along with the -Streaming Tables (STs) and Materialized Views (MVs) managed by them: +The following resources may contain data that will be lost upon deletion: delete resources.pipelines.foo All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/test-bundle/default diff --git a/acceptance/bundle/resources/permissions/pipelines/other_is_owner/output.txt b/acceptance/bundle/resources/permissions/pipelines/other_is_owner/output.txt index 3b82b04aa9..11471a892e 100644 --- a/acceptance/bundle/resources/permissions/pipelines/other_is_owner/output.txt +++ b/acceptance/bundle/resources/permissions/pipelines/other_is_owner/output.txt @@ -21,8 +21,7 @@ Deployment complete! The following resources will be deleted: delete resources.pipelines.foo -This action will result in the deletion of the following Lakeflow Spark Declarative Pipelines along with the -Streaming Tables (STs) and Materialized Views (MVs) managed by them: +The following resources may contain data that will be lost upon deletion: delete resources.pipelines.foo All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/test-bundle/default diff --git a/acceptance/bundle/resources/permissions/postgres_projects/current_can_manage/output.txt b/acceptance/bundle/resources/permissions/postgres_projects/current_can_manage/output.txt index 10e8ce61d5..e2b435f3ed 100644 --- a/acceptance/bundle/resources/permissions/postgres_projects/current_can_manage/output.txt +++ b/acceptance/bundle/resources/permissions/postgres_projects/current_can_manage/output.txt @@ -29,6 +29,9 @@ Deployment complete! The following resources will be deleted: delete resources.postgres_projects.foo +The following resources may contain data that will be lost upon deletion: + delete resources.postgres_projects.foo + All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/test-bundle/default Deleting files... diff --git a/acceptance/bundle/resources/permissions/sql_warehouses/current_can_manage/output.txt b/acceptance/bundle/resources/permissions/sql_warehouses/current_can_manage/output.txt index 1f05753379..0392f4627d 100644 --- a/acceptance/bundle/resources/permissions/sql_warehouses/current_can_manage/output.txt +++ b/acceptance/bundle/resources/permissions/sql_warehouses/current_can_manage/output.txt @@ -29,6 +29,8 @@ Deployment complete! The following resources will be deleted: delete resources.sql_warehouses.foo +The following resources may contain data that will be lost upon deletion: + All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/test-bundle/default Deleting files... diff --git a/acceptance/bundle/resources/permissions/target_permissions/output.txt b/acceptance/bundle/resources/permissions/target_permissions/output.txt index 05faf19c98..1f2e4b83ea 100644 --- a/acceptance/bundle/resources/permissions/target_permissions/output.txt +++ b/acceptance/bundle/resources/permissions/target_permissions/output.txt @@ -15,6 +15,8 @@ Deployment complete! The following resources will be deleted: delete resources.jobs.foo +The following resources may contain data that will be lost upon deletion: + All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/test-bundle Deleting files... diff --git a/acceptance/bundle/resources/pipelines/allow-duplicate-names/output.txt b/acceptance/bundle/resources/pipelines/allow-duplicate-names/output.txt index 278c60dabb..351668ac9c 100644 --- a/acceptance/bundle/resources/pipelines/allow-duplicate-names/output.txt +++ b/acceptance/bundle/resources/pipelines/allow-duplicate-names/output.txt @@ -46,8 +46,7 @@ Deployment complete! The following resources will be deleted: delete resources.pipelines.pipeline_one -This action will result in the deletion of the following Lakeflow Spark Declarative Pipelines along with the -Streaming Tables (STs) and Materialized Views (MVs) managed by them: +The following resources may contain data that will be lost upon deletion: delete resources.pipelines.pipeline_one All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/acc-bundle-deploy-pipeline-duplicate-names-[UNIQUE_NAME]/default diff --git a/acceptance/bundle/resources/pipelines/auto-approve/output.txt b/acceptance/bundle/resources/pipelines/auto-approve/output.txt index 5154a1206a..eae0f27c3e 100644 --- a/acceptance/bundle/resources/pipelines/auto-approve/output.txt +++ b/acceptance/bundle/resources/pipelines/auto-approve/output.txt @@ -45,10 +45,8 @@ Plan: 0 to add, 0 to change, 2 to delete, 0 unchanged >>> errcode [CLI] bundle deploy Uploading bundle files to /Workspace/Users/[USERNAME]/.bundle/[UNIQUE_NAME]/files... -This action will result in the deletion or recreation of the following Lakeflow Spark Declarative Pipelines along with the -Streaming Tables (STs) and Materialized Views (MVs) managed by them. Recreating the pipelines will -restore the defined STs and MVs through full refresh. Note that recreation is necessary when pipeline -properties such as the 'catalog' or 'storage' are changed: +This action will result in the deletion or recreation of the following resources. +Deleted or recreated resources may result in data loss or other irreversible consequences: delete resources.pipelines.bar Error: the deployment requires destructive actions, but current console does not support prompting. Please specify --auto-approve if you would like to skip prompts and proceed @@ -60,8 +58,7 @@ The following resources will be deleted: delete resources.jobs.foo delete resources.pipelines.bar -This action will result in the deletion of the following Lakeflow Spark Declarative Pipelines along with the -Streaming Tables (STs) and Materialized Views (MVs) managed by them: +The following resources may contain data that will be lost upon deletion: delete resources.pipelines.bar All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/[UNIQUE_NAME] diff --git a/acceptance/bundle/resources/pipelines/lakeflow-pipeline/output.txt b/acceptance/bundle/resources/pipelines/lakeflow-pipeline/output.txt index 04129e78ce..df6e3e735a 100644 --- a/acceptance/bundle/resources/pipelines/lakeflow-pipeline/output.txt +++ b/acceptance/bundle/resources/pipelines/lakeflow-pipeline/output.txt @@ -42,8 +42,7 @@ Deployment complete! The following resources will be deleted: delete resources.pipelines.foo -This action will result in the deletion of the following Lakeflow Spark Declarative Pipelines along with the -Streaming Tables (STs) and Materialized Views (MVs) managed by them: +The following resources may contain data that will be lost upon deletion: delete resources.pipelines.foo All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/test-pipeline-lakeflow-pipeline-[UNIQUE_NAME]/default diff --git a/acceptance/bundle/resources/pipelines/recreate-keys/change-ingestion-definition/output.txt b/acceptance/bundle/resources/pipelines/recreate-keys/change-ingestion-definition/output.txt index 5951bbfc01..538d081808 100644 --- a/acceptance/bundle/resources/pipelines/recreate-keys/change-ingestion-definition/output.txt +++ b/acceptance/bundle/resources/pipelines/recreate-keys/change-ingestion-definition/output.txt @@ -63,10 +63,8 @@ Plan: 1 to add, 0 to change, 1 to delete, 0 unchanged >>> [CLI] bundle deploy --auto-approve Uploading bundle files to /Workspace/Users/[USERNAME]/.bundle/acc-[UNIQUE_NAME]/default/files... -This action will result in the deletion or recreation of the following Lakeflow Spark Declarative Pipelines along with the -Streaming Tables (STs) and Materialized Views (MVs) managed by them. Recreating the pipelines will -restore the defined STs and MVs through full refresh. Note that recreation is necessary when pipeline -properties such as the 'catalog' or 'storage' are changed: +This action will result in the deletion or recreation of the following resources. +Deleted or recreated resources may result in data loss or other irreversible consequences: recreate resources.pipelines.my Deploying resources... Updating deployment state... @@ -149,8 +147,7 @@ Error: The specified pipeline [MY_ID] was not found. The following resources will be deleted: delete resources.pipelines.my -This action will result in the deletion of the following Lakeflow Spark Declarative Pipelines along with the -Streaming Tables (STs) and Materialized Views (MVs) managed by them: +The following resources may contain data that will be lost upon deletion: delete resources.pipelines.my All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/acc-[UNIQUE_NAME]/default diff --git a/acceptance/bundle/resources/pipelines/recreate-keys/change-storage/output.txt b/acceptance/bundle/resources/pipelines/recreate-keys/change-storage/output.txt index 58e58039eb..0b3eec0032 100644 --- a/acceptance/bundle/resources/pipelines/recreate-keys/change-storage/output.txt +++ b/acceptance/bundle/resources/pipelines/recreate-keys/change-storage/output.txt @@ -58,10 +58,8 @@ Plan: 1 to add, 0 to change, 1 to delete, 0 unchanged >>> [CLI] bundle deploy --auto-approve Uploading bundle files to /Workspace/Users/[USERNAME]/.bundle/acc-[UNIQUE_NAME]/default/files... -This action will result in the deletion or recreation of the following Lakeflow Spark Declarative Pipelines along with the -Streaming Tables (STs) and Materialized Views (MVs) managed by them. Recreating the pipelines will -restore the defined STs and MVs through full refresh. Note that recreation is necessary when pipeline -properties such as the 'catalog' or 'storage' are changed: +This action will result in the deletion or recreation of the following resources. +Deleted or recreated resources may result in data loss or other irreversible consequences: recreate resources.pipelines.my Deploying resources... Updating deployment state... @@ -133,8 +131,7 @@ Error: The specified pipeline [MY_ID] was not found. The following resources will be deleted: delete resources.pipelines.my -This action will result in the deletion of the following Lakeflow Spark Declarative Pipelines along with the -Streaming Tables (STs) and Materialized Views (MVs) managed by them: +The following resources may contain data that will be lost upon deletion: delete resources.pipelines.my All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/acc-[UNIQUE_NAME]/default diff --git a/acceptance/bundle/resources/pipelines/recreate/output.txt b/acceptance/bundle/resources/pipelines/recreate/output.txt index 8550395ff2..a7cfa0524c 100644 --- a/acceptance/bundle/resources/pipelines/recreate/output.txt +++ b/acceptance/bundle/resources/pipelines/recreate/output.txt @@ -44,10 +44,8 @@ Plan: 1 to add, 0 to change, 1 to delete, 1 unchanged >>> errcode [CLI] bundle deploy --force-lock Uploading bundle files to /Workspace/Users/[USERNAME]/.bundle/[UNIQUE_NAME]/files... -This action will result in the deletion or recreation of the following Lakeflow Spark Declarative Pipelines along with the -Streaming Tables (STs) and Materialized Views (MVs) managed by them. Recreating the pipelines will -restore the defined STs and MVs through full refresh. Note that recreation is necessary when pipeline -properties such as the 'catalog' or 'storage' are changed: +This action will result in the deletion or recreation of the following resources. +Deleted or recreated resources may result in data loss or other irreversible consequences: recreate resources.pipelines.foo Error: the deployment requires destructive actions, but current console does not support prompting. Please specify --auto-approve if you would like to skip prompts and proceed @@ -59,12 +57,9 @@ The following resources will be deleted: delete resources.pipelines.foo delete resources.schemas.bar -This action will result in the deletion of the following UC schemas. Any underlying data may be lost: - delete resources.schemas.bar - -This action will result in the deletion of the following Lakeflow Spark Declarative Pipelines along with the -Streaming Tables (STs) and Materialized Views (MVs) managed by them: +The following resources may contain data that will be lost upon deletion: delete resources.pipelines.foo + delete resources.schemas.bar All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/[UNIQUE_NAME] diff --git a/acceptance/bundle/resources/pipelines/update/output.txt b/acceptance/bundle/resources/pipelines/update/output.txt index e34efaf84e..cd90704034 100644 --- a/acceptance/bundle/resources/pipelines/update/output.txt +++ b/acceptance/bundle/resources/pipelines/update/output.txt @@ -71,8 +71,7 @@ Deployment complete! The following resources will be deleted: delete resources.pipelines.my -This action will result in the deletion of the following Lakeflow Spark Declarative Pipelines along with the -Streaming Tables (STs) and Materialized Views (MVs) managed by them: +The following resources may contain data that will be lost upon deletion: delete resources.pipelines.my All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/acc-[UNIQUE_NAME]/default diff --git a/acceptance/bundle/resources/postgres_branches/basic/output.txt b/acceptance/bundle/resources/postgres_branches/basic/output.txt index ae9053d377..121539afbd 100644 --- a/acceptance/bundle/resources/postgres_branches/basic/output.txt +++ b/acceptance/bundle/resources/postgres_branches/basic/output.txt @@ -69,6 +69,10 @@ The following resources will be deleted: delete resources.postgres_branches.main delete resources.postgres_projects.my_project +The following resources may contain data that will be lost upon deletion: + delete resources.postgres_branches.main + delete resources.postgres_projects.my_project + All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/deploy-postgres-branch-[UNIQUE_NAME]/default Deleting files... diff --git a/acceptance/bundle/resources/postgres_branches/recreate/output.txt b/acceptance/bundle/resources/postgres_branches/recreate/output.txt index fa92953259..85f5df1d30 100644 --- a/acceptance/bundle/resources/postgres_branches/recreate/output.txt +++ b/acceptance/bundle/resources/postgres_branches/recreate/output.txt @@ -64,6 +64,10 @@ resources: >>> [CLI] bundle deploy --auto-approve Uploading bundle files to /Workspace/Users/[USERNAME]/.bundle/deploy-postgres-branch-recreate-[UNIQUE_NAME]/default/files... + +This action will result in the deletion or recreation of the following resources. +Deleted or recreated resources may result in data loss or other irreversible consequences: + recreate resources.postgres_branches.main Deploying resources... Updating deployment state... Deployment complete! @@ -75,6 +79,10 @@ The following resources will be deleted: delete resources.postgres_branches.main delete resources.postgres_projects.my_project +The following resources may contain data that will be lost upon deletion: + delete resources.postgres_branches.main + delete resources.postgres_projects.my_project + All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/deploy-postgres-branch-recreate-[UNIQUE_NAME]/default Deleting files... diff --git a/acceptance/bundle/resources/postgres_branches/update_protected/output.txt b/acceptance/bundle/resources/postgres_branches/update_protected/output.txt index b32d48a909..862a0c3633 100644 --- a/acceptance/bundle/resources/postgres_branches/update_protected/output.txt +++ b/acceptance/bundle/resources/postgres_branches/update_protected/output.txt @@ -154,6 +154,10 @@ The following resources will be deleted: delete resources.postgres_branches.dev_branch delete resources.postgres_projects.my_project +The following resources may contain data that will be lost upon deletion: + delete resources.postgres_branches.dev_branch + delete resources.postgres_projects.my_project + All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/update-postgres-branch-[UNIQUE_NAME]/default Deleting files... diff --git a/acceptance/bundle/resources/postgres_endpoints/basic/output.txt b/acceptance/bundle/resources/postgres_endpoints/basic/output.txt index 53de63481d..287f5711ba 100644 --- a/acceptance/bundle/resources/postgres_endpoints/basic/output.txt +++ b/acceptance/bundle/resources/postgres_endpoints/basic/output.txt @@ -87,6 +87,10 @@ The following resources will be deleted: delete resources.postgres_endpoints.custom delete resources.postgres_projects.my_project +The following resources may contain data that will be lost upon deletion: + delete resources.postgres_branches.main + delete resources.postgres_projects.my_project + All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/deploy-postgres-endpoint-[UNIQUE_NAME]/default Deleting files... diff --git a/acceptance/bundle/resources/postgres_endpoints/recreate/output.txt b/acceptance/bundle/resources/postgres_endpoints/recreate/output.txt index 9f9bb4faa8..b07ff0c323 100644 --- a/acceptance/bundle/resources/postgres_endpoints/recreate/output.txt +++ b/acceptance/bundle/resources/postgres_endpoints/recreate/output.txt @@ -147,6 +147,10 @@ The following resources will be deleted: delete resources.postgres_endpoints.my_endpoint delete resources.postgres_projects.my_project +The following resources may contain data that will be lost upon deletion: + delete resources.postgres_branches.main + delete resources.postgres_projects.my_project + All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/deploy-postgres-endpoint-recreate-[UNIQUE_NAME]/default Deleting files... diff --git a/acceptance/bundle/resources/postgres_endpoints/update_autoscaling/output.txt b/acceptance/bundle/resources/postgres_endpoints/update_autoscaling/output.txt index a53bd84053..381f1f82ce 100644 --- a/acceptance/bundle/resources/postgres_endpoints/update_autoscaling/output.txt +++ b/acceptance/bundle/resources/postgres_endpoints/update_autoscaling/output.txt @@ -187,6 +187,10 @@ The following resources will be deleted: delete resources.postgres_endpoints.my_endpoint delete resources.postgres_projects.my_project +The following resources may contain data that will be lost upon deletion: + delete resources.postgres_branches.main + delete resources.postgres_projects.my_project + All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/update-postgres-endpoint-[UNIQUE_NAME]/default Deleting files... diff --git a/acceptance/bundle/resources/postgres_projects/basic/output.txt b/acceptance/bundle/resources/postgres_projects/basic/output.txt index 8c1288cb08..0b0fe455ef 100644 --- a/acceptance/bundle/resources/postgres_projects/basic/output.txt +++ b/acceptance/bundle/resources/postgres_projects/basic/output.txt @@ -64,6 +64,9 @@ Resources: The following resources will be deleted: delete resources.postgres_projects.my_project +The following resources may contain data that will be lost upon deletion: + delete resources.postgres_projects.my_project + All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/deploy-postgres-single-project-[UNIQUE_NAME]/default Deleting files... diff --git a/acceptance/bundle/resources/postgres_projects/recreate/output.txt b/acceptance/bundle/resources/postgres_projects/recreate/output.txt index 950ef936b9..b9f84e7e89 100644 --- a/acceptance/bundle/resources/postgres_projects/recreate/output.txt +++ b/acceptance/bundle/resources/postgres_projects/recreate/output.txt @@ -51,6 +51,10 @@ resources: >>> [CLI] bundle deploy --auto-approve Uploading bundle files to /Workspace/Users/[USERNAME]/.bundle/deploy-postgres-recreate-[UNIQUE_NAME]/default/files... + +This action will result in the deletion or recreation of the following resources. +Deleted or recreated resources may result in data loss or other irreversible consequences: + recreate resources.postgres_projects.my_project Deploying resources... Updating deployment state... Deployment complete! @@ -61,6 +65,9 @@ Deployment complete! The following resources will be deleted: delete resources.postgres_projects.my_project +The following resources may contain data that will be lost upon deletion: + delete resources.postgres_projects.my_project + All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/deploy-postgres-recreate-[UNIQUE_NAME]/default Deleting files... diff --git a/acceptance/bundle/resources/postgres_projects/update_display_name/output.txt b/acceptance/bundle/resources/postgres_projects/update_display_name/output.txt index 61829ead70..9d45d073fb 100644 --- a/acceptance/bundle/resources/postgres_projects/update_display_name/output.txt +++ b/acceptance/bundle/resources/postgres_projects/update_display_name/output.txt @@ -157,6 +157,9 @@ Deployment complete! The following resources will be deleted: delete resources.postgres_projects.my_project +The following resources may contain data that will be lost upon deletion: + delete resources.postgres_projects.my_project + All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/update-postgres-project-[UNIQUE_NAME]/default Deleting files... diff --git a/acceptance/bundle/resources/quality_monitors/change_assets_dir/out.deploy.direct.txt b/acceptance/bundle/resources/quality_monitors/change_assets_dir/out.deploy.direct.txt index 1268e736e1..4634921c28 100644 --- a/acceptance/bundle/resources/quality_monitors/change_assets_dir/out.deploy.direct.txt +++ b/acceptance/bundle/resources/quality_monitors/change_assets_dir/out.deploy.direct.txt @@ -1,6 +1,10 @@ ->>> errcode [CLI] bundle deploy +>>> errcode [CLI] bundle deploy --auto-approve Uploading bundle files to /Workspace/Users/[USERNAME]/.bundle/quality-monitor-update-[UNIQUE_NAME]/default/files... + +This action will result in the deletion or recreation of the following resources. +Deleted or recreated resources may result in data loss or other irreversible consequences: + recreate resources.quality_monitors.monitor1 Deploying resources... Updating deployment state... Deployment complete! diff --git a/acceptance/bundle/resources/quality_monitors/change_assets_dir/out.deploy.terraform.txt b/acceptance/bundle/resources/quality_monitors/change_assets_dir/out.deploy.terraform.txt index 99c0d7d2d8..7b9b613806 100644 --- a/acceptance/bundle/resources/quality_monitors/change_assets_dir/out.deploy.terraform.txt +++ b/acceptance/bundle/resources/quality_monitors/change_assets_dir/out.deploy.terraform.txt @@ -1,5 +1,5 @@ ->>> errcode [CLI] bundle deploy +>>> errcode [CLI] bundle deploy --auto-approve Uploading bundle files to /Workspace/Users/[USERNAME]/.bundle/quality-monitor-update-[UNIQUE_NAME]/default/files... Deploying resources... Error: terraform apply: exit status 1 diff --git a/acceptance/bundle/resources/quality_monitors/change_assets_dir/output.txt b/acceptance/bundle/resources/quality_monitors/change_assets_dir/output.txt index 08f6c53ae1..4283332812 100644 --- a/acceptance/bundle/resources/quality_monitors/change_assets_dir/output.txt +++ b/acceptance/bundle/resources/quality_monitors/change_assets_dir/output.txt @@ -29,6 +29,9 @@ Plan: 0 to add, 0 to change, 0 to delete, 1 unchanged The following resources will be deleted: delete resources.quality_monitors.monitor1 +The following resources may contain data that will be lost upon deletion: + delete resources.quality_monitors.monitor1 + All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/quality-monitor-update-[UNIQUE_NAME]/default Deleting files... diff --git a/acceptance/bundle/resources/quality_monitors/change_assets_dir/script b/acceptance/bundle/resources/quality_monitors/change_assets_dir/script index 6caf49a7f4..7a281ab6f3 100644 --- a/acceptance/bundle/resources/quality_monitors/change_assets_dir/script +++ b/acceptance/bundle/resources/quality_monitors/change_assets_dir/script @@ -25,6 +25,6 @@ trace errcode $CLI bundle plan &> out.plan.$DATABRICKS_BUNDLE_ENGINE.txt trace errcode $CLI bundle plan -o json &> out.plan.$DATABRICKS_BUNDLE_ENGINE.json rm out.requests.txt -trace errcode $CLI bundle deploy &> out.deploy.$DATABRICKS_BUNDLE_ENGINE.txt +trace errcode $CLI bundle deploy --auto-approve &> out.deploy.$DATABRICKS_BUNDLE_ENGINE.txt trace print_requests.py '^//import-file/' '^//workspace/' '^//telemetry-ext' > out.deploy.requests.$DATABRICKS_BUNDLE_ENGINE.json trace errcode $CLI bundle plan &> out.plan_after_deploy.$DATABRICKS_BUNDLE_ENGINE.txt diff --git a/acceptance/bundle/resources/quality_monitors/change_output_schema_name/output.txt b/acceptance/bundle/resources/quality_monitors/change_output_schema_name/output.txt index d67ee41975..5fe0141937 100644 --- a/acceptance/bundle/resources/quality_monitors/change_output_schema_name/output.txt +++ b/acceptance/bundle/resources/quality_monitors/change_output_schema_name/output.txt @@ -45,6 +45,9 @@ Plan: 0 to add, 0 to change, 0 to delete, 1 unchanged The following resources will be deleted: delete resources.quality_monitors.monitor1 +The following resources may contain data that will be lost upon deletion: + delete resources.quality_monitors.monitor1 + All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/quality-monitor-update-[UNIQUE_NAME]/default Deleting files... diff --git a/acceptance/bundle/resources/quality_monitors/change_table_name/out.deploy.direct.txt b/acceptance/bundle/resources/quality_monitors/change_table_name/out.deploy.direct.txt index 1268e736e1..4634921c28 100644 --- a/acceptance/bundle/resources/quality_monitors/change_table_name/out.deploy.direct.txt +++ b/acceptance/bundle/resources/quality_monitors/change_table_name/out.deploy.direct.txt @@ -1,6 +1,10 @@ ->>> errcode [CLI] bundle deploy +>>> errcode [CLI] bundle deploy --auto-approve Uploading bundle files to /Workspace/Users/[USERNAME]/.bundle/quality-monitor-update-[UNIQUE_NAME]/default/files... + +This action will result in the deletion or recreation of the following resources. +Deleted or recreated resources may result in data loss or other irreversible consequences: + recreate resources.quality_monitors.monitor1 Deploying resources... Updating deployment state... Deployment complete! diff --git a/acceptance/bundle/resources/quality_monitors/change_table_name/output.txt b/acceptance/bundle/resources/quality_monitors/change_table_name/output.txt index 879222aa8a..e2d30f3064 100644 --- a/acceptance/bundle/resources/quality_monitors/change_table_name/output.txt +++ b/acceptance/bundle/resources/quality_monitors/change_table_name/output.txt @@ -29,6 +29,9 @@ Plan: 0 to add, 0 to change, 0 to delete, 1 unchanged The following resources will be deleted: delete resources.quality_monitors.monitor1 +The following resources may contain data that will be lost upon deletion: + delete resources.quality_monitors.monitor1 + All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/quality-monitor-update-[UNIQUE_NAME]/default Deleting files... diff --git a/acceptance/bundle/resources/quality_monitors/change_table_name/script b/acceptance/bundle/resources/quality_monitors/change_table_name/script index 891aece1c1..1d62da21fd 100644 --- a/acceptance/bundle/resources/quality_monitors/change_table_name/script +++ b/acceptance/bundle/resources/quality_monitors/change_table_name/script @@ -25,7 +25,7 @@ trace errcode $CLI bundle plan &> out.plan.$DATABRICKS_BUNDLE_ENGINE.txt trace errcode $CLI bundle plan -o json &> out.plan.$DATABRICKS_BUNDLE_ENGINE.json rm out.requests.txt -trace errcode $CLI bundle deploy &> out.deploy.$DATABRICKS_BUNDLE_ENGINE.txt +trace errcode $CLI bundle deploy --auto-approve &> out.deploy.$DATABRICKS_BUNDLE_ENGINE.txt trace print_requests.py '^//import-file/' '^//workspace/' '^//telemetry-ext' > out.deploy.requests.$DATABRICKS_BUNDLE_ENGINE.json trace errcode $CLI bundle plan &> out.plan_after_deploy.$DATABRICKS_BUNDLE_ENGINE.txt diff --git a/acceptance/bundle/resources/quality_monitors/create/output.txt b/acceptance/bundle/resources/quality_monitors/create/output.txt index 8037d5ec9c..c3fb558638 100644 --- a/acceptance/bundle/resources/quality_monitors/create/output.txt +++ b/acceptance/bundle/resources/quality_monitors/create/output.txt @@ -24,6 +24,9 @@ Table main.qm_test_[UNIQUE_NAME].test_table is now visible (catalog_name=main) The following resources will be deleted: delete resources.quality_monitors.monitor1 +The following resources may contain data that will be lost upon deletion: + delete resources.quality_monitors.monitor1 + All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/quality-monitor-update-[UNIQUE_NAME]/default Deleting files... diff --git a/acceptance/bundle/resources/registered_models/basic/output.txt b/acceptance/bundle/resources/registered_models/basic/output.txt index 8ba7d5758b..8ce44cf089 100644 --- a/acceptance/bundle/resources/registered_models/basic/output.txt +++ b/acceptance/bundle/resources/registered_models/basic/output.txt @@ -24,7 +24,7 @@ create registered_models.my_registered_model Plan: 1 to add, 0 to change, 0 to delete, 0 unchanged ->>> [CLI] bundle deploy +>>> [CLI] bundle deploy --auto-approve Uploading bundle files to /Workspace/Users/[USERNAME]/.bundle/deploy-registered-models-basic-[UNIQUE_NAME]/default/files... Deploying resources... Updating deployment state... @@ -44,7 +44,7 @@ update registered_models.my_registered_model Plan: 0 to add, 1 to change, 0 to delete, 0 unchanged ->>> [CLI] bundle deploy +>>> [CLI] bundle deploy --auto-approve Uploading bundle files to /Workspace/Users/[USERNAME]/.bundle/deploy-registered-models-basic-[UNIQUE_NAME]/default/files... Deploying resources... Updating deployment state... @@ -64,8 +64,12 @@ recreate registered_models.my_registered_model Plan: 1 to add, 0 to change, 1 to delete, 0 unchanged ->>> [CLI] bundle deploy +>>> [CLI] bundle deploy --auto-approve Uploading bundle files to /Workspace/Users/[USERNAME]/.bundle/deploy-registered-models-basic-[UNIQUE_NAME]/default/files... + +This action will result in the deletion or recreation of the following resources. +Deleted or recreated resources may result in data loss or other irreversible consequences: + recreate resources.registered_models.my_registered_model Deploying resources... Updating deployment state... Deployment complete! @@ -84,8 +88,12 @@ recreate registered_models.my_registered_model Plan: 1 to add, 0 to change, 1 to delete, 0 unchanged ->>> [CLI] bundle deploy +>>> [CLI] bundle deploy --auto-approve Uploading bundle files to /Workspace/Users/[USERNAME]/.bundle/deploy-registered-models-basic-[UNIQUE_NAME]/default/files... + +This action will result in the deletion or recreation of the following resources. +Deleted or recreated resources may result in data loss or other irreversible consequences: + recreate resources.registered_models.my_registered_model Deploying resources... Updating deployment state... Deployment complete! @@ -104,8 +112,12 @@ recreate registered_models.my_registered_model Plan: 1 to add, 0 to change, 1 to delete, 0 unchanged ->>> [CLI] bundle deploy +>>> [CLI] bundle deploy --auto-approve Uploading bundle files to /Workspace/Users/[USERNAME]/.bundle/deploy-registered-models-basic-[UNIQUE_NAME]/default/files... + +This action will result in the deletion or recreation of the following resources. +Deleted or recreated resources may result in data loss or other irreversible consequences: + recreate resources.registered_models.my_registered_model Deploying resources... Updating deployment state... Deployment complete! @@ -122,6 +134,9 @@ Deployment complete! The following resources will be deleted: delete resources.registered_models.my_registered_model +The following resources may contain data that will be lost upon deletion: + delete resources.registered_models.my_registered_model + All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/deploy-registered-models-basic-[UNIQUE_NAME]/default Deleting files... diff --git a/acceptance/bundle/resources/registered_models/basic/script b/acceptance/bundle/resources/registered_models/basic/script index 42313057e0..a69c5f62f3 100644 --- a/acceptance/bundle/resources/registered_models/basic/script +++ b/acceptance/bundle/resources/registered_models/basic/script @@ -19,7 +19,7 @@ trap cleanup EXIT deploy_registered_model() { trace $CLI bundle plan - trace $CLI bundle deploy + trace $CLI bundle deploy --auto-approve registered_model_id=$($CLI bundle summary --output json | jq -r '.resources.registered_models.my_registered_model.id') trace $CLI registered-models get "${registered_model_id}" | jq '{name, comment, catalog_name, schema_name}' } diff --git a/acceptance/bundle/resources/schemas/auto-approve/output.txt b/acceptance/bundle/resources/schemas/auto-approve/output.txt index 6a773f60ca..937b43c816 100644 --- a/acceptance/bundle/resources/schemas/auto-approve/output.txt +++ b/acceptance/bundle/resources/schemas/auto-approve/output.txt @@ -55,7 +55,8 @@ test-file-[UNIQUE_NAME].txt -> dbfs:/Volumes/main/test-schema-[UNIQUE_NAME]/test >>> [CLI] bundle deploy Uploading bundle files to /Workspace/Users/[USERNAME]/.bundle/[UNIQUE_NAME]/files... -This action will result in the deletion or recreation of the following UC schemas. Any underlying data may be lost: +This action will result in the deletion or recreation of the following resources. +Deleted or recreated resources may result in data loss or other irreversible consequences: delete resources.schemas.bar Error: the deployment requires destructive actions, but current console does not support prompting. Please specify --auto-approve if you would like to skip prompts and proceed @@ -66,12 +67,9 @@ The following resources will be deleted: delete resources.pipelines.foo delete resources.schemas.bar -This action will result in the deletion of the following UC schemas. Any underlying data may be lost: - delete resources.schemas.bar - -This action will result in the deletion of the following Lakeflow Spark Declarative Pipelines along with the -Streaming Tables (STs) and Materialized Views (MVs) managed by them: +The following resources may contain data that will be lost upon deletion: delete resources.pipelines.foo + delete resources.schemas.bar All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/[UNIQUE_NAME] diff --git a/acceptance/bundle/resources/schemas/recreate/output.txt b/acceptance/bundle/resources/schemas/recreate/output.txt index 571d750e4a..6076c72b54 100644 --- a/acceptance/bundle/resources/schemas/recreate/output.txt +++ b/acceptance/bundle/resources/schemas/recreate/output.txt @@ -38,7 +38,8 @@ Plan: 1 to add, 0 to change, 1 to delete, 0 unchanged >>> [CLI] bundle deploy --auto-approve Uploading bundle files to /Workspace/Users/[USERNAME]/.bundle/test-bundle/default/files... -This action will result in the deletion or recreation of the following UC schemas. Any underlying data may be lost: +This action will result in the deletion or recreation of the following resources. +Deleted or recreated resources may result in data loss or other irreversible consequences: recreate resources.schemas.schema1 Deploying resources... Updating deployment state... diff --git a/acceptance/bundle/resources/secret_scopes/basic/output.txt b/acceptance/bundle/resources/secret_scopes/basic/output.txt index 5788225a45..87287ed19d 100644 --- a/acceptance/bundle/resources/secret_scopes/basic/output.txt +++ b/acceptance/bundle/resources/secret_scopes/basic/output.txt @@ -58,8 +58,12 @@ Deployment complete! === update the name of the scope (should recreate) >>> [CLI] bundle plan -o json ->>> [CLI] bundle deploy +>>> [CLI] bundle deploy --auto-approve Uploading bundle files to /Workspace/Users/[USERNAME]/.bundle/secret-scope-basic-[UNIQUE_NAME]/default/files... + +This action will result in the deletion or recreation of the following resources. +Deleted or recreated resources may result in data loss or other irreversible consequences: + recreate resources.secret_scopes.my_scope Deploying resources... Updating deployment state... Deployment complete! @@ -103,6 +107,9 @@ Deployment complete! The following resources will be deleted: delete resources.secret_scopes.my_scope +The following resources may contain data that will be lost upon deletion: + delete resources.secret_scopes.my_scope + All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/secret-scope-basic-[UNIQUE_NAME]/default Deleting files... diff --git a/acceptance/bundle/resources/secret_scopes/basic/script b/acceptance/bundle/resources/secret_scopes/basic/script index d0f3adeced..bad9d19310 100755 --- a/acceptance/bundle/resources/secret_scopes/basic/script +++ b/acceptance/bundle/resources/secret_scopes/basic/script @@ -27,7 +27,7 @@ export SECRET_SCOPE_NAME="test-scope-$UNIQUE_NAME-2" envsubst < databricks.yml.tmpl > databricks.yml trace $CLI bundle plan -o json | sort_acls_json.py > out.plan2.$DATABRICKS_BUNDLE_ENGINE.json -trace $CLI bundle deploy +trace $CLI bundle deploy --auto-approve # Capture API requests for verification. Terraform cleans up ACLs before deleting the scope, but direct does not, hence the difference in requests. trace print_requests.py //secrets > out.recreate-requests.$DATABRICKS_BUNDLE_ENGINE.txt diff --git a/acceptance/bundle/resources/secret_scopes/delete_scope/output.txt b/acceptance/bundle/resources/secret_scopes/delete_scope/output.txt index 18025f0a0f..0fc9a92605 100644 --- a/acceptance/bundle/resources/secret_scopes/delete_scope/output.txt +++ b/acceptance/bundle/resources/secret_scopes/delete_scope/output.txt @@ -6,8 +6,12 @@ Deploying resources... Updating deployment state... Deployment complete! ->>> [CLI] bundle deploy +>>> [CLI] bundle deploy --auto-approve Uploading bundle files to /Workspace/Users/[USERNAME]/.bundle/secret-scope-basic-[UNIQUE_NAME]/default/files... + +This action will result in the deletion or recreation of the following resources. +Deleted or recreated resources may result in data loss or other irreversible consequences: + delete resources.secret_scopes.second Deploying resources... Updating deployment state... Deployment complete! @@ -16,6 +20,9 @@ Deployment complete! The following resources will be deleted: delete resources.secret_scopes.first +The following resources may contain data that will be lost upon deletion: + delete resources.secret_scopes.first + All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/secret-scope-basic-[UNIQUE_NAME]/default Deleting files... diff --git a/acceptance/bundle/resources/secret_scopes/delete_scope/script b/acceptance/bundle/resources/secret_scopes/delete_scope/script index b12e98775a..4f8dd28b9e 100755 --- a/acceptance/bundle/resources/secret_scopes/delete_scope/script +++ b/acceptance/bundle/resources/secret_scopes/delete_scope/script @@ -14,5 +14,5 @@ grep -v DELETE < databricks.yml > databricks.yml.tmp && mv databricks.yml.tmp da trace $CLI bundle plan &> out.plan.$DATABRICKS_BUNDLE_ENGINE.txt rm out.requests.txt -trace $CLI bundle deploy +trace $CLI bundle deploy --auto-approve trace print_requests.py '^//import-file/' '^//workspace/' '^//telemetry-ext' &> out.deploy.requests.txt diff --git a/acceptance/bundle/resources/secret_scopes/permissions-collapse/output.txt b/acceptance/bundle/resources/secret_scopes/permissions-collapse/output.txt index b487f27076..413173d8c9 100644 --- a/acceptance/bundle/resources/secret_scopes/permissions-collapse/output.txt +++ b/acceptance/bundle/resources/secret_scopes/permissions-collapse/output.txt @@ -24,6 +24,9 @@ Deployment complete! The following resources will be deleted: delete resources.secret_scopes.my_scope +The following resources may contain data that will be lost upon deletion: + delete resources.secret_scopes.my_scope + All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/secret-scope-collapse-[UNIQUE_NAME]/default Deleting files... diff --git a/acceptance/bundle/resources/secret_scopes/permissions/output.txt b/acceptance/bundle/resources/secret_scopes/permissions/output.txt index 8ea0a7cfe8..c55c556c68 100644 --- a/acceptance/bundle/resources/secret_scopes/permissions/output.txt +++ b/acceptance/bundle/resources/secret_scopes/permissions/output.txt @@ -40,8 +40,12 @@ Deployment complete! === change scope name (should recreate scope and update permissions) >>> [CLI] bundle plan ->>> [CLI] bundle deploy +>>> [CLI] bundle deploy --auto-approve Uploading bundle files to /Workspace/Users/[USERNAME]/.bundle/secret-scope-permissions-[UNIQUE_NAME]/default/files... + +This action will result in the deletion or recreation of the following resources. +Deleted or recreated resources may result in data loss or other irreversible consequences: + recreate resources.secret_scopes.my_scope Deploying resources... Updating deployment state... Deployment complete! @@ -61,6 +65,9 @@ Deployment complete! The following resources will be deleted: delete resources.secret_scopes.my_scope +The following resources may contain data that will be lost upon deletion: + delete resources.secret_scopes.my_scope + All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/secret-scope-permissions-[UNIQUE_NAME]/default Deleting files... diff --git a/acceptance/bundle/resources/secret_scopes/permissions/script b/acceptance/bundle/resources/secret_scopes/permissions/script index 7c261749a1..216b5a6bfe 100755 --- a/acceptance/bundle/resources/secret_scopes/permissions/script +++ b/acceptance/bundle/resources/secret_scopes/permissions/script @@ -68,7 +68,7 @@ title "change scope name (should recreate scope and update permissions)" export SECRET_SCOPE_NAME="test-scope-permissions-$UNIQUE_NAME-2" envsubst < databricks.yml.tmpl > databricks.yml trace $CLI bundle plan > out.plan.recreate.$DATABRICKS_BUNDLE_ENGINE.txt -trace $CLI bundle deploy +trace $CLI bundle deploy --auto-approve scope_name=$($CLI bundle summary --output json | jq -r '.resources.secret_scopes.my_scope.name') trace $CLI secrets list-scopes -o json | jq ".[] | select(.name == \"$scope_name\")" trace $CLI secrets list-acls $scope_name | jq -c '.[]' | sort diff --git a/acceptance/bundle/resources/synced_database_tables/basic/output.txt b/acceptance/bundle/resources/synced_database_tables/basic/output.txt index 7e8871433f..62b8173a0d 100644 --- a/acceptance/bundle/resources/synced_database_tables/basic/output.txt +++ b/acceptance/bundle/resources/synced_database_tables/basic/output.txt @@ -50,6 +50,10 @@ The following resources will be deleted: delete resources.database_instances.my_instance delete resources.synced_database_tables.my_synced_table +The following resources may contain data that will be lost upon deletion: + delete resources.database_catalogs.my_catalog + delete resources.database_instances.my_instance + All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/deploy-lakebase-synced-table-[UNIQUE_NAME]/default Deleting files... diff --git a/acceptance/bundle/resources/volumes/change-comment/output.txt b/acceptance/bundle/resources/volumes/change-comment/output.txt index e68c981548..885c25c04b 100644 --- a/acceptance/bundle/resources/volumes/change-comment/output.txt +++ b/acceptance/bundle/resources/volumes/change-comment/output.txt @@ -91,10 +91,7 @@ Deployment complete! The following resources will be deleted: delete resources.volumes.volume1 -This action will result in the deletion of the following volumes. -For managed volumes, the files stored in the volume are also deleted from your -cloud tenant within 30 days. For external volumes, the metadata about the volume -is removed from the catalog, but the underlying files are not deleted: +The following resources may contain data that will be lost upon deletion: delete resources.volumes.volume1 All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/test-bundle/default diff --git a/acceptance/bundle/resources/volumes/change-schema-name/output.txt b/acceptance/bundle/resources/volumes/change-schema-name/output.txt index 4d5145da9e..ed654b8b5e 100644 --- a/acceptance/bundle/resources/volumes/change-schema-name/output.txt +++ b/acceptance/bundle/resources/volumes/change-schema-name/output.txt @@ -44,10 +44,8 @@ Plan: 1 to add, 0 to change, 1 to delete, 0 unchanged >>> [CLI] bundle deploy --auto-approve Uploading bundle files to /Workspace/Users/[USERNAME]/.bundle/test-bundle/default/files... -This action will result in the deletion or recreation of the following volumes. -For managed volumes, the files stored in the volume are also deleted from your -cloud tenant within 30 days. For external volumes, the metadata about the volume -is removed from the catalog, but the underlying files are not deleted: +This action will result in the deletion or recreation of the following resources. +Deleted or recreated resources may result in data loss or other irreversible consequences: recreate resources.volumes.volume1 Deploying resources... Updating deployment state... diff --git a/acceptance/bundle/resources/volumes/set-storage-location/output.txt b/acceptance/bundle/resources/volumes/set-storage-location/output.txt index 7a463920be..57a977023d 100644 --- a/acceptance/bundle/resources/volumes/set-storage-location/output.txt +++ b/acceptance/bundle/resources/volumes/set-storage-location/output.txt @@ -33,7 +33,7 @@ Plan: 2 to add, 0 to change, 0 to delete, 0 unchanged The following resources will be deleted: delete resources.schemas.myschema -This action will result in the deletion of the following UC schemas. Any underlying data may be lost: +The following resources may contain data that will be lost upon deletion: delete resources.schemas.myschema All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/testbundle-[UNIQUE_NAME]/default diff --git a/acceptance/bundle/state/state_present/output.txt b/acceptance/bundle/state/state_present/output.txt index 224c543d3b..593df19fee 100644 --- a/acceptance/bundle/state/state_present/output.txt +++ b/acceptance/bundle/state/state_present/output.txt @@ -51,7 +51,7 @@ Deployment complete! The following resources will be deleted: delete resources.schemas.foo -This action will result in the deletion of the following UC schemas. Any underlying data may be lost: +The following resources may contain data that will be lost upon deletion: delete resources.schemas.foo All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/test-bundle/default diff --git a/acceptance/bundle/summary/modified_status/output.txt b/acceptance/bundle/summary/modified_status/output.txt index 82bc66bf9f..e1057b0751 100644 --- a/acceptance/bundle/summary/modified_status/output.txt +++ b/acceptance/bundle/summary/modified_status/output.txt @@ -185,12 +185,10 @@ The following resources will be deleted: delete resources.schemas.my_schema delete resources.sql_warehouses.my_sql_warehouse -This action will result in the deletion of the following UC schemas. Any underlying data may be lost: - delete resources.schemas.my_schema - -This action will result in the deletion of the following Lakeflow Spark Declarative Pipelines along with the -Streaming Tables (STs) and Materialized Views (MVs) managed by them: +The following resources may contain data that will be lost upon deletion: + delete resources.alerts.my_alert delete resources.pipelines.my_pipeline + delete resources.schemas.my_schema All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/test-bundle/default diff --git a/acceptance/bundle/templates/default-python/integration_classic/output.txt b/acceptance/bundle/templates/default-python/integration_classic/output.txt index 2206b10cd2..d9afd51159 100644 --- a/acceptance/bundle/templates/default-python/integration_classic/output.txt +++ b/acceptance/bundle/templates/default-python/integration_classic/output.txt @@ -92,8 +92,7 @@ The following resources will be deleted: delete resources.jobs.sample_job delete resources.pipelines.project_name_[UNIQUE_NAME]_etl -This action will result in the deletion of the following Lakeflow Spark Declarative Pipelines along with the -Streaming Tables (STs) and Materialized Views (MVs) managed by them: +The following resources may contain data that will be lost upon deletion: delete resources.pipelines.project_name_[UNIQUE_NAME]_etl All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/project_name_[UNIQUE_NAME]/dev @@ -490,8 +489,7 @@ The following resources will be deleted: delete resources.jobs.sample_job delete resources.pipelines.project_name_[UNIQUE_NAME]_etl -This action will result in the deletion of the following Lakeflow Spark Declarative Pipelines along with the -Streaming Tables (STs) and Materialized Views (MVs) managed by them: +The following resources may contain data that will be lost upon deletion: delete resources.pipelines.project_name_[UNIQUE_NAME]_etl All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/project_name_[UNIQUE_NAME]/prod diff --git a/acceptance/bundle/user_agent/simple/output.txt b/acceptance/bundle/user_agent/simple/output.txt index 493c4f9f8f..d11510cf1b 100644 --- a/acceptance/bundle/user_agent/simple/output.txt +++ b/acceptance/bundle/user_agent/simple/output.txt @@ -53,7 +53,7 @@ Error: resource with key "foo" not found The following resources will be deleted: delete resources.schemas.foo -This action will result in the deletion of the following UC schemas. Any underlying data may be lost: +The following resources may contain data that will be lost upon deletion: delete resources.schemas.foo All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/test-bundle/default diff --git a/acceptance/cmd/workspace/apps/run-local-node/output.txt b/acceptance/cmd/workspace/apps/run-local-node/output.txt index 0185dbe523..4de672232f 100644 --- a/acceptance/cmd/workspace/apps/run-local-node/output.txt +++ b/acceptance/cmd/workspace/apps/run-local-node/output.txt @@ -1,12 +1,2 @@ -Running command: node -e console.log('Hello, world') -Hello, world -=== Starting the app in background... -=== Waiting -=== Checking app is running... ->>> curl -s -o - http://127.0.0.1:$(port) -{"message":"Hello From App","timestamp":"[TIMESTAMP]","status":"running"} - -=== Sending shutdown request... ->>> curl -s -o /dev/null http://127.0.0.1:$(port)/shutdown -Process terminated +Exit code: 1 diff --git a/acceptance/pipelines/deploy/auto-approve/output.txt b/acceptance/pipelines/deploy/auto-approve/output.txt index ff5ac099bf..72ee4c54d0 100644 --- a/acceptance/pipelines/deploy/auto-approve/output.txt +++ b/acceptance/pipelines/deploy/auto-approve/output.txt @@ -13,10 +13,8 @@ View your pipeline foo here: [DATABRICKS_URL]/pipelines/[UUID]?o=[NUMID] >>> errcode [CLI] pipelines deploy Uploading bundle files to /Workspace/Users/[USERNAME]/.bundle/test-pipeline-auto-approve/default/files... -This action will result in the deletion or recreation of the following Lakeflow Spark Declarative Pipelines along with the -Streaming Tables (STs) and Materialized Views (MVs) managed by them. Recreating the pipelines will -restore the defined STs and MVs through full refresh. Note that recreation is necessary when pipeline -properties such as the 'catalog' or 'storage' are changed: +This action will result in the deletion or recreation of the following resources. +Deleted or recreated resources may result in data loss or other irreversible consequences: delete resources.pipelines.foo Error: the deployment requires destructive actions, but current console does not support prompting. Please specify --auto-approve if you would like to skip prompts and proceed @@ -27,10 +25,8 @@ Exit code: 1 >>> [CLI] pipelines deploy --auto-approve Uploading bundle files to /Workspace/Users/[USERNAME]/.bundle/test-pipeline-auto-approve/default/files... -This action will result in the deletion or recreation of the following Lakeflow Spark Declarative Pipelines along with the -Streaming Tables (STs) and Materialized Views (MVs) managed by them. Recreating the pipelines will -restore the defined STs and MVs through full refresh. Note that recreation is necessary when pipeline -properties such as the 'catalog' or 'storage' are changed: +This action will result in the deletion or recreation of the following resources. +Deleted or recreated resources may result in data loss or other irreversible consequences: delete resources.pipelines.foo Deploying resources... Updating deployment state... diff --git a/acceptance/pipelines/destroy/auto-approve/output.txt b/acceptance/pipelines/destroy/auto-approve/output.txt index 17aecc2059..80236e9289 100644 --- a/acceptance/pipelines/destroy/auto-approve/output.txt +++ b/acceptance/pipelines/destroy/auto-approve/output.txt @@ -16,8 +16,7 @@ Exit code: 1 The following resources will be deleted: delete resources.pipelines.my_pipeline -This action will result in the deletion of the following Lakeflow Spark Declarative Pipelines along with the -Streaming Tables (STs) and Materialized Views (MVs) managed by them: +The following resources may contain data that will be lost upon deletion: delete resources.pipelines.my_pipeline All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/test-pipeline-destroy/default diff --git a/acceptance/pipelines/destroy/destroy-pipeline/output.txt b/acceptance/pipelines/destroy/destroy-pipeline/output.txt index d06ff16cfc..2ea78d771a 100644 --- a/acceptance/pipelines/destroy/destroy-pipeline/output.txt +++ b/acceptance/pipelines/destroy/destroy-pipeline/output.txt @@ -11,8 +11,7 @@ View your pipeline my_pipeline here: [DATABRICKS_URL]/pipelines/[UUID]?o=[NUMID] The following resources will be deleted: delete resources.pipelines.my_pipeline -This action will result in the deletion of the following Lakeflow Spark Declarative Pipelines along with the -Streaming Tables (STs) and Materialized Views (MVs) managed by them: +The following resources may contain data that will be lost upon deletion: delete resources.pipelines.my_pipeline All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/test-pipeline-destroy/default diff --git a/acceptance/pipelines/destroy/force-lock/output.txt b/acceptance/pipelines/destroy/force-lock/output.txt index 5b6449f732..385100ac30 100644 --- a/acceptance/pipelines/destroy/force-lock/output.txt +++ b/acceptance/pipelines/destroy/force-lock/output.txt @@ -22,8 +22,7 @@ Exit code: 1 The following resources will be deleted: delete resources.pipelines.foo -This action will result in the deletion of the following Lakeflow Spark Declarative Pipelines along with the -Streaming Tables (STs) and Materialized Views (MVs) managed by them: +The following resources may contain data that will be lost upon deletion: delete resources.pipelines.foo All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/test-pipeline-force-lock/default diff --git a/acceptance/pipelines/e2e/output.txt b/acceptance/pipelines/e2e/output.txt index a964b394da..cf12a895a2 100644 --- a/acceptance/pipelines/e2e/output.txt +++ b/acceptance/pipelines/e2e/output.txt @@ -105,8 +105,7 @@ The following resources will be deleted: delete resources.pipelines.lakeflow_project_etl delete resources.pipelines.lakeflow_project_etl_2 -This action will result in the deletion of the following Lakeflow Spark Declarative Pipelines along with the -Streaming Tables (STs) and Materialized Views (MVs) managed by them: +The following resources may contain data that will be lost upon deletion: delete resources.pipelines.lakeflow_project_etl delete resources.pipelines.lakeflow_project_etl_2 diff --git a/bundle/phases/deploy.go b/bundle/phases/deploy.go index 4613a7a211..9a4398ad26 100644 --- a/bundle/phases/deploy.go +++ b/bundle/phases/deploy.go @@ -26,6 +26,48 @@ import ( "github.com/databricks/cli/libs/sync" ) +// resourcesSafeToDestroy lists resource types that can be safely deleted or +// recreated without a confirmation prompt. All other resource types require +// approval because their deletion may cause non-recoverable data loss. +// +// Rubric: a resource is safe if it holds only ephemeral state or configuration +// that is fully recoverable by redeploying the bundle. +// +// Resources NOT on this list (and thus requiring a warning): +// - schemas: contains tables, views, functions; force-delete cascades to all data. +// - volumes: managed volumes have files deleted from cloud within 30 days. +// - pipelines: deletion currently cascades to managed Streaming Tables and Materialized Views. +// - dashboards: non-reproducible URL/ID; UI-developed content may not be in bundle config. +// - catalogs: top-level UC container; force-delete cascades to all schemas/tables/data. +// - secret_scopes: secrets are added out-of-band and destroyed on scope deletion. +// - database_instances: purge deletes all Postgres data permanently. +// - database_catalogs: destroys associated Postgres database and all tables/data. +// - postgres_projects: cascades to delete all branches, databases, and endpoints. +// - postgres_branches: contains forked database data that is permanently lost. +// - models: deletion cascades to all model versions and artifacts. +// - registered_models: deletion cascades to all UC model versions. +// - experiments: runs, metrics, parameters, and artifacts are lost. +// - quality_monitors: drift/profile metrics tables may be lost or orphaned. +// - alerts: purge permanently destroys evaluation and notification history. +var resourcesSafeToDestroy = map[string]bool{ + // Jobs: run history persists independently of the job definition. + "jobs": true, + // Model serving endpoints: stateless config; inference tables live in UC independently. + "model_serving_endpoints": true, + // Clusters: pure ephemeral compute; all config is in the bundle. + "clusters": true, + // Apps: stateless; all config and code deployed from bundle. + "apps": true, + // SQL warehouses: compute endpoint; query history stored separately. + "sql_warehouses": true, + // External locations: metadata pointer only; underlying cloud storage is not deleted. + "external_locations": true, + // Synced database tables: PurgeData=false preserves synced data; source always preserved. + "synced_database_tables": true, + // Postgres endpoints: stateless connection config; data lives in branch/project. + "postgres_endpoints": true, +} + func approvalForDeploy(ctx context.Context, b *bundle.Bundle, plan *deployplan.Plan) (bool, error) { actions := plan.GetActions() @@ -35,49 +77,33 @@ func approvalForDeploy(ctx context.Context, b *bundle.Bundle, plan *deployplan.P } types := []deployplan.ActionType{deployplan.Recreate, deployplan.Delete} - schemaActions := filterGroup(actions, "schemas", types...) - dltActions := filterGroup(actions, "pipelines", types...) - volumeActions := filterGroup(actions, "volumes", types...) - dashboardActions := filterGroup(actions, "dashboards", types...) - // We don't need to display any prompts in this case. - if len(schemaActions) == 0 && len(dltActions) == 0 && len(volumeActions) == 0 && len(dashboardActions) == 0 { - return true, nil - } - - // One or more UC schema resources will be deleted or recreated. - if len(schemaActions) != 0 { - cmdio.LogString(ctx, deleteOrRecreateSchemaMessage) - for _, action := range schemaActions { - if action.IsChildResource() { - continue - } - cmdio.Log(ctx, action) + // Collect destructive actions for resource types that are NOT safe to destroy. + var destructiveActions []deployplan.Action + for _, action := range actions { + actionGroup := config.GetResourceTypeFromKey(action.ResourceKey) + if resourcesSafeToDestroy[actionGroup] { + continue } - } - - // One or more DLT pipelines is being recreated. - if len(dltActions) != 0 { - cmdio.LogString(ctx, deleteOrRecreatePipelineMessage) - for _, action := range dltActions { - cmdio.Log(ctx, action) + for _, t := range types { + if action.ActionType == t { + destructiveActions = append(destructiveActions, action) + break + } } } - // One or more volumes is being recreated. - if len(volumeActions) != 0 { - cmdio.LogString(ctx, deleteOrRecreateVolumeMessage) - for _, action := range volumeActions { - cmdio.Log(ctx, action) - } + // We don't need to display any prompts in this case. + if len(destructiveActions) == 0 { + return true, nil } - // One or more dashboards is being recreated. - if len(dashboardActions) != 0 { - cmdio.LogString(ctx, deleteOrRecreateDashboardMessage) - for _, action := range dashboardActions { - cmdio.Log(ctx, action) + cmdio.LogString(ctx, deleteOrRecreateResourceMessage) + for _, action := range destructiveActions { + if action.IsChildResource() { + continue } + cmdio.Log(ctx, action) } if b.AutoApprove { diff --git a/bundle/phases/destroy.go b/bundle/phases/destroy.go index e6be00b579..c3a410095a 100644 --- a/bundle/phases/destroy.go +++ b/bundle/phases/destroy.go @@ -6,6 +6,7 @@ import ( "net/http" "github.com/databricks/cli/bundle" + "github.com/databricks/cli/bundle/config" "github.com/databricks/cli/bundle/config/engine" "github.com/databricks/cli/bundle/config/mutator" "github.com/databricks/cli/bundle/deploy/files" @@ -51,29 +52,21 @@ func approvalForDestroy(ctx context.Context, b *bundle.Bundle, plan *deployplan. cmdio.LogString(ctx, "") } - schemaActions := filterGroup(deleteActions, "schemas", deployplan.Delete) - dltActions := filterGroup(deleteActions, "pipelines", deployplan.Delete) - volumeActions := filterGroup(deleteActions, "volumes", deployplan.Delete) - - if len(schemaActions) > 0 { - cmdio.LogString(ctx, deleteSchemaMessage) - for _, a := range schemaActions { - cmdio.Log(ctx, a) + // Highlight resources that may cause data loss when destroyed. + var dataLossActions []deployplan.Action + for _, a := range deleteActions { + actionGroup := config.GetResourceTypeFromKey(a.ResourceKey) + if !resourcesSafeToDestroy[actionGroup] && a.ActionType == deployplan.Delete { + dataLossActions = append(dataLossActions, a) } - cmdio.LogString(ctx, "") } - if len(dltActions) > 0 { - cmdio.LogString(ctx, deletePipelineMessage) - for _, a := range dltActions { - cmdio.Log(ctx, a) - } - cmdio.LogString(ctx, "") - } - - if len(volumeActions) > 0 { - cmdio.LogString(ctx, deleteVolumeMessage) - for _, a := range volumeActions { + if len(dataLossActions) > 0 { + cmdio.LogString(ctx, deleteResourceMessage) + for _, a := range dataLossActions { + if a.IsChildResource() { + continue + } cmdio.Log(ctx, a) } cmdio.LogString(ctx, "") diff --git a/bundle/phases/messages.go b/bundle/phases/messages.go index 625373dd8b..67dfddf690 100644 --- a/bundle/phases/messages.go +++ b/bundle/phases/messages.go @@ -2,35 +2,12 @@ package phases // Messages for bundle deploy. const ( - deleteOrRecreateSchemaMessage = ` -This action will result in the deletion or recreation of the following UC schemas. Any underlying data may be lost:` - - deleteOrRecreatePipelineMessage = ` -This action will result in the deletion or recreation of the following Lakeflow Spark Declarative Pipelines along with the -Streaming Tables (STs) and Materialized Views (MVs) managed by them. Recreating the pipelines will -restore the defined STs and MVs through full refresh. Note that recreation is necessary when pipeline -properties such as the 'catalog' or 'storage' are changed:` - - deleteOrRecreateVolumeMessage = ` -This action will result in the deletion or recreation of the following volumes. -For managed volumes, the files stored in the volume are also deleted from your -cloud tenant within 30 days. For external volumes, the metadata about the volume -is removed from the catalog, but the underlying files are not deleted:` - - deleteOrRecreateDashboardMessage = ` -This action will result in the deletion or recreation of the following dashboards. -This will result in changed IDs and permanent URLs of the dashboards that will be recreated:` + deleteOrRecreateResourceMessage = ` +This action will result in the deletion or recreation of the following resources. +Deleted or recreated resources may result in data loss or other irreversible consequences:` ) // Messages for bundle destroy. const ( - deleteSchemaMessage = `This action will result in the deletion of the following UC schemas. Any underlying data may be lost:` - - deletePipelineMessage = `This action will result in the deletion of the following Lakeflow Spark Declarative Pipelines along with the -Streaming Tables (STs) and Materialized Views (MVs) managed by them:` - - deleteVolumeMessage = `This action will result in the deletion of the following volumes. -For managed volumes, the files stored in the volume are also deleted from your -cloud tenant within 30 days. For external volumes, the metadata about the volume -is removed from the catalog, but the underlying files are not deleted:` + deleteResourceMessage = `The following resources may contain data that will be lost upon deletion:` ) diff --git a/bundle/phases/util.go b/bundle/phases/util.go deleted file mode 100644 index 4df40f8add..0000000000 --- a/bundle/phases/util.go +++ /dev/null @@ -1,25 +0,0 @@ -package phases - -import ( - "github.com/databricks/cli/bundle/config" - "github.com/databricks/cli/bundle/deployplan" -) - -// filterGroup returns actions that match the specified group and any of the specified action types -func filterGroup(changes []deployplan.Action, group string, actionTypes ...deployplan.ActionType) []deployplan.Action { - var result []deployplan.Action - - // Create a set of action types for efficient lookup - actionTypeSet := make(map[deployplan.ActionType]bool) - for _, actionType := range actionTypes { - actionTypeSet[actionType] = true - } - - for _, action := range changes { - actionGroup := config.GetResourceTypeFromKey(action.ResourceKey) - if actionGroup == group && actionTypeSet[action.ActionType] { - result = append(result, action) - } - } - return result -} From c923ca6452025f07c9a5a7c42b575706620ea75f Mon Sep 17 00:00:00 2001 From: Denis Bilenko Date: Mon, 23 Mar 2026 21:03:47 +0100 Subject: [PATCH 2/5] Fix empty data-loss warning for safe resource types Child resources like permissions and grants (e.g. "apps.permissions") were not recognized as belonging to a safe parent resource type, causing an empty warning header to appear during destroy. Co-authored-by: Isaac --- .../bundle/apps/job_permissions/output.txt | 2 -- .../deployment/unbind/permissions/output.txt | 2 -- .../apps/current_can_manage/output.txt | 2 -- .../permissions/apps/other_can_manage/output.txt | 2 -- .../clusters/current_can_manage/output.txt | 2 -- .../jobs/current_can_manage/output.txt | 2 -- .../jobs/current_can_manage_run/output.txt | 2 -- .../permissions/jobs/current_is_owner/output.txt | 2 -- .../permissions/jobs/delete_one/local/output.txt | 2 -- .../permissions/jobs/other_can_manage/output.txt | 2 -- .../jobs/other_can_manage_run/output.txt | 2 -- .../permissions/jobs/other_is_owner/output.txt | 2 -- .../permissions/jobs/viewers/output.txt | 2 -- .../sql_warehouses/current_can_manage/output.txt | 2 -- .../permissions/target_permissions/output.txt | 2 -- bundle/phases/deploy.go | 16 ++++++++++++++-- bundle/phases/destroy.go | 4 +--- 17 files changed, 15 insertions(+), 35 deletions(-) diff --git a/acceptance/bundle/apps/job_permissions/output.txt b/acceptance/bundle/apps/job_permissions/output.txt index a0d5e63be2..14aa7b12c2 100644 --- a/acceptance/bundle/apps/job_permissions/output.txt +++ b/acceptance/bundle/apps/job_permissions/output.txt @@ -33,8 +33,6 @@ The following resources will be deleted: delete resources.apps.my_app delete resources.jobs.my_job -The following resources may contain data that will be lost upon deletion: - All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/[UNIQUE_NAME]/default Deleting files... diff --git a/acceptance/bundle/deployment/unbind/permissions/output.txt b/acceptance/bundle/deployment/unbind/permissions/output.txt index 4faa518a51..a7e824374b 100644 --- a/acceptance/bundle/deployment/unbind/permissions/output.txt +++ b/acceptance/bundle/deployment/unbind/permissions/output.txt @@ -43,8 +43,6 @@ Deployment complete! The following resources will be deleted: delete resources.jobs.job_1 -The following resources may contain data that will be lost upon deletion: - All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/[UNIQUE_NAME] Deleting files... diff --git a/acceptance/bundle/resources/permissions/apps/current_can_manage/output.txt b/acceptance/bundle/resources/permissions/apps/current_can_manage/output.txt index e76248f8fd..bb226ca3f9 100644 --- a/acceptance/bundle/resources/permissions/apps/current_can_manage/output.txt +++ b/acceptance/bundle/resources/permissions/apps/current_can_manage/output.txt @@ -29,8 +29,6 @@ Deployment complete! The following resources will be deleted: delete resources.apps.foo -The following resources may contain data that will be lost upon deletion: - All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/test-bundle/default Deleting files... diff --git a/acceptance/bundle/resources/permissions/apps/other_can_manage/output.txt b/acceptance/bundle/resources/permissions/apps/other_can_manage/output.txt index e76248f8fd..bb226ca3f9 100644 --- a/acceptance/bundle/resources/permissions/apps/other_can_manage/output.txt +++ b/acceptance/bundle/resources/permissions/apps/other_can_manage/output.txt @@ -29,8 +29,6 @@ Deployment complete! The following resources will be deleted: delete resources.apps.foo -The following resources may contain data that will be lost upon deletion: - All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/test-bundle/default Deleting files... diff --git a/acceptance/bundle/resources/permissions/clusters/current_can_manage/output.txt b/acceptance/bundle/resources/permissions/clusters/current_can_manage/output.txt index dbd612f12a..09a0645407 100644 --- a/acceptance/bundle/resources/permissions/clusters/current_can_manage/output.txt +++ b/acceptance/bundle/resources/permissions/clusters/current_can_manage/output.txt @@ -29,8 +29,6 @@ Deployment complete! The following resources will be deleted: delete resources.clusters.foo -The following resources may contain data that will be lost upon deletion: - All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/test-bundle/default Deleting files... diff --git a/acceptance/bundle/resources/permissions/jobs/current_can_manage/output.txt b/acceptance/bundle/resources/permissions/jobs/current_can_manage/output.txt index ed46d2c449..8d21073e1c 100644 --- a/acceptance/bundle/resources/permissions/jobs/current_can_manage/output.txt +++ b/acceptance/bundle/resources/permissions/jobs/current_can_manage/output.txt @@ -29,8 +29,6 @@ Deployment complete! The following resources will be deleted: delete resources.jobs.foo -The following resources may contain data that will be lost upon deletion: - All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/test-bundle/default Deleting files... diff --git a/acceptance/bundle/resources/permissions/jobs/current_can_manage_run/output.txt b/acceptance/bundle/resources/permissions/jobs/current_can_manage_run/output.txt index cc6582b1c9..91420fa952 100644 --- a/acceptance/bundle/resources/permissions/jobs/current_can_manage_run/output.txt +++ b/acceptance/bundle/resources/permissions/jobs/current_can_manage_run/output.txt @@ -36,8 +36,6 @@ Deployment complete! The following resources will be deleted: delete resources.jobs.interim_gold_layer_job -The following resources may contain data that will be lost upon deletion: - All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/test-bundle-[UNIQUE_NAME]/green Deleting files... diff --git a/acceptance/bundle/resources/permissions/jobs/current_is_owner/output.txt b/acceptance/bundle/resources/permissions/jobs/current_is_owner/output.txt index ba417d4a52..1e0de88140 100644 --- a/acceptance/bundle/resources/permissions/jobs/current_is_owner/output.txt +++ b/acceptance/bundle/resources/permissions/jobs/current_is_owner/output.txt @@ -17,8 +17,6 @@ Deployment complete! The following resources will be deleted: delete resources.jobs.foo -The following resources may contain data that will be lost upon deletion: - All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/test-bundle/default Deleting files... diff --git a/acceptance/bundle/resources/permissions/jobs/delete_one/local/output.txt b/acceptance/bundle/resources/permissions/jobs/delete_one/local/output.txt index 3082efd03e..cefbf2e73e 100644 --- a/acceptance/bundle/resources/permissions/jobs/delete_one/local/output.txt +++ b/acceptance/bundle/resources/permissions/jobs/delete_one/local/output.txt @@ -29,8 +29,6 @@ Deployment complete! The following resources will be deleted: delete resources.jobs.job_with_permissions -The following resources may contain data that will be lost upon deletion: - All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/test-bundle-[UNIQUE_NAME]/default Deleting files... diff --git a/acceptance/bundle/resources/permissions/jobs/other_can_manage/output.txt b/acceptance/bundle/resources/permissions/jobs/other_can_manage/output.txt index ed46d2c449..8d21073e1c 100644 --- a/acceptance/bundle/resources/permissions/jobs/other_can_manage/output.txt +++ b/acceptance/bundle/resources/permissions/jobs/other_can_manage/output.txt @@ -29,8 +29,6 @@ Deployment complete! The following resources will be deleted: delete resources.jobs.foo -The following resources may contain data that will be lost upon deletion: - All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/test-bundle/default Deleting files... diff --git a/acceptance/bundle/resources/permissions/jobs/other_can_manage_run/output.txt b/acceptance/bundle/resources/permissions/jobs/other_can_manage_run/output.txt index c206a3150d..d4faa3048f 100644 --- a/acceptance/bundle/resources/permissions/jobs/other_can_manage_run/output.txt +++ b/acceptance/bundle/resources/permissions/jobs/other_can_manage_run/output.txt @@ -38,8 +38,6 @@ Deployment complete! The following resources will be deleted: delete resources.jobs.interim_gold_layer_job -The following resources may contain data that will be lost upon deletion: - All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/test-bundle-[UNIQUE_NAME]/green Deleting files... diff --git a/acceptance/bundle/resources/permissions/jobs/other_is_owner/output.txt b/acceptance/bundle/resources/permissions/jobs/other_is_owner/output.txt index 69d5064e91..3c6e977515 100644 --- a/acceptance/bundle/resources/permissions/jobs/other_is_owner/output.txt +++ b/acceptance/bundle/resources/permissions/jobs/other_is_owner/output.txt @@ -21,8 +21,6 @@ Deployment complete! The following resources will be deleted: delete resources.jobs.foo -The following resources may contain data that will be lost upon deletion: - All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/test-bundle/default Deleting files... diff --git a/acceptance/bundle/resources/permissions/jobs/viewers/output.txt b/acceptance/bundle/resources/permissions/jobs/viewers/output.txt index f814c8d10e..a880e3e813 100644 --- a/acceptance/bundle/resources/permissions/jobs/viewers/output.txt +++ b/acceptance/bundle/resources/permissions/jobs/viewers/output.txt @@ -29,8 +29,6 @@ Deployment complete! The following resources will be deleted: delete resources.jobs.foo -The following resources may contain data that will be lost upon deletion: - All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/test-bundle/default Deleting files... diff --git a/acceptance/bundle/resources/permissions/sql_warehouses/current_can_manage/output.txt b/acceptance/bundle/resources/permissions/sql_warehouses/current_can_manage/output.txt index 0392f4627d..1f05753379 100644 --- a/acceptance/bundle/resources/permissions/sql_warehouses/current_can_manage/output.txt +++ b/acceptance/bundle/resources/permissions/sql_warehouses/current_can_manage/output.txt @@ -29,8 +29,6 @@ Deployment complete! The following resources will be deleted: delete resources.sql_warehouses.foo -The following resources may contain data that will be lost upon deletion: - All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/test-bundle/default Deleting files... diff --git a/acceptance/bundle/resources/permissions/target_permissions/output.txt b/acceptance/bundle/resources/permissions/target_permissions/output.txt index 1f2e4b83ea..05faf19c98 100644 --- a/acceptance/bundle/resources/permissions/target_permissions/output.txt +++ b/acceptance/bundle/resources/permissions/target_permissions/output.txt @@ -15,8 +15,6 @@ Deployment complete! The following resources will be deleted: delete resources.jobs.foo -The following resources may contain data that will be lost upon deletion: - All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/test-bundle Deleting files... diff --git a/bundle/phases/deploy.go b/bundle/phases/deploy.go index 9a4398ad26..5456f1f56f 100644 --- a/bundle/phases/deploy.go +++ b/bundle/phases/deploy.go @@ -3,6 +3,7 @@ package phases import ( "context" "errors" + "strings" "github.com/databricks/cli/bundle" "github.com/databricks/cli/bundle/artifacts" @@ -49,6 +50,18 @@ import ( // - experiments: runs, metrics, parameters, and artifacts are lost. // - quality_monitors: drift/profile metrics tables may be lost or orphaned. // - alerts: purge permanently destroys evaluation and notification history. +// isActionSafeToDestroy checks if an action targets a resource type that is +// safe to destroy. For child resources (e.g. permissions, grants), the safety +// is determined by the parent resource type. +func isActionSafeToDestroy(action deployplan.Action) bool { + resourceType := config.GetResourceTypeFromKey(action.ResourceKey) + // Child resources like "jobs.permissions" inherit safety from parent type. + if base, _, ok := strings.Cut(resourceType, "."); ok { + return resourcesSafeToDestroy[base] + } + return resourcesSafeToDestroy[resourceType] +} + var resourcesSafeToDestroy = map[string]bool{ // Jobs: run history persists independently of the job definition. "jobs": true, @@ -81,8 +94,7 @@ func approvalForDeploy(ctx context.Context, b *bundle.Bundle, plan *deployplan.P // Collect destructive actions for resource types that are NOT safe to destroy. var destructiveActions []deployplan.Action for _, action := range actions { - actionGroup := config.GetResourceTypeFromKey(action.ResourceKey) - if resourcesSafeToDestroy[actionGroup] { + if isActionSafeToDestroy(action) { continue } for _, t := range types { diff --git a/bundle/phases/destroy.go b/bundle/phases/destroy.go index c3a410095a..e0382c4647 100644 --- a/bundle/phases/destroy.go +++ b/bundle/phases/destroy.go @@ -6,7 +6,6 @@ import ( "net/http" "github.com/databricks/cli/bundle" - "github.com/databricks/cli/bundle/config" "github.com/databricks/cli/bundle/config/engine" "github.com/databricks/cli/bundle/config/mutator" "github.com/databricks/cli/bundle/deploy/files" @@ -55,8 +54,7 @@ func approvalForDestroy(ctx context.Context, b *bundle.Bundle, plan *deployplan. // Highlight resources that may cause data loss when destroyed. var dataLossActions []deployplan.Action for _, a := range deleteActions { - actionGroup := config.GetResourceTypeFromKey(a.ResourceKey) - if !resourcesSafeToDestroy[actionGroup] && a.ActionType == deployplan.Delete { + if !isActionSafeToDestroy(a) && a.ActionType == deployplan.Delete { dataLossActions = append(dataLossActions, a) } } From 3750c93507c4c9de0439ae19b12424272232209f Mon Sep 17 00:00:00 2001 From: Denis Bilenko Date: Mon, 23 Mar 2026 21:09:06 +0100 Subject: [PATCH 3/5] Exclude child resources (permissions, grants) from destructive action filter Move the IsChildResource() check from the printing loop into the collection loop. Deleting permissions or grants of a resource does not cause data loss, so they should not trigger the warning prompt regardless of the parent resource type. Co-authored-by: Isaac --- bundle/phases/deploy.go | 8 ++++---- bundle/phases/destroy.go | 7 +++---- 2 files changed, 7 insertions(+), 8 deletions(-) diff --git a/bundle/phases/deploy.go b/bundle/phases/deploy.go index 5456f1f56f..e3d9d8ee7f 100644 --- a/bundle/phases/deploy.go +++ b/bundle/phases/deploy.go @@ -50,6 +50,7 @@ import ( // - experiments: runs, metrics, parameters, and artifacts are lost. // - quality_monitors: drift/profile metrics tables may be lost or orphaned. // - alerts: purge permanently destroys evaluation and notification history. +// // isActionSafeToDestroy checks if an action targets a resource type that is // safe to destroy. For child resources (e.g. permissions, grants), the safety // is determined by the parent resource type. @@ -92,9 +93,11 @@ func approvalForDeploy(ctx context.Context, b *bundle.Bundle, plan *deployplan.P types := []deployplan.ActionType{deployplan.Recreate, deployplan.Delete} // Collect destructive actions for resource types that are NOT safe to destroy. + // Child resources (e.g. permissions, grants) are excluded because deleting + // them does not cause data loss in the parent resource. var destructiveActions []deployplan.Action for _, action := range actions { - if isActionSafeToDestroy(action) { + if action.IsChildResource() || isActionSafeToDestroy(action) { continue } for _, t := range types { @@ -112,9 +115,6 @@ func approvalForDeploy(ctx context.Context, b *bundle.Bundle, plan *deployplan.P cmdio.LogString(ctx, deleteOrRecreateResourceMessage) for _, action := range destructiveActions { - if action.IsChildResource() { - continue - } cmdio.Log(ctx, action) } diff --git a/bundle/phases/destroy.go b/bundle/phases/destroy.go index e0382c4647..bc8ba5f49d 100644 --- a/bundle/phases/destroy.go +++ b/bundle/phases/destroy.go @@ -52,9 +52,11 @@ func approvalForDestroy(ctx context.Context, b *bundle.Bundle, plan *deployplan. } // Highlight resources that may cause data loss when destroyed. + // Child resources (e.g. permissions, grants) are excluded because deleting + // them does not cause data loss in the parent resource. var dataLossActions []deployplan.Action for _, a := range deleteActions { - if !isActionSafeToDestroy(a) && a.ActionType == deployplan.Delete { + if !a.IsChildResource() && !isActionSafeToDestroy(a) && a.ActionType == deployplan.Delete { dataLossActions = append(dataLossActions, a) } } @@ -62,9 +64,6 @@ func approvalForDestroy(ctx context.Context, b *bundle.Bundle, plan *deployplan. if len(dataLossActions) > 0 { cmdio.LogString(ctx, deleteResourceMessage) for _, a := range dataLossActions { - if a.IsChildResource() { - continue - } cmdio.Log(ctx, a) } cmdio.LogString(ctx, "") From fbe28cd73f08f2026b1c1c70f13dca230a950f58 Mon Sep 17 00:00:00 2001 From: Pieter Noordhuis Date: Mon, 23 Mar 2026 16:14:04 +0100 Subject: [PATCH 4/5] Pin GitHub action references (#4817) ## Summary - Pin all GitHub action references to their commit SHAs - Each SHA maps to the current tag for the action at the time of pinning --- .github/workflows/push.yml | 6 +++--- .github/workflows/release.yml | 4 ++-- .github/workflows/tagging.yml | 4 ++-- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/.github/workflows/push.yml b/.github/workflows/push.yml index ee3900509b..c0a731b356 100644 --- a/.github/workflows/push.yml +++ b/.github/workflows/push.yml @@ -422,7 +422,7 @@ jobs: # Use Checks API (not Statuses API) to match the required "Integration Tests" check. - name: Skip integration tests (pull request) if: ${{ github.event_name == 'pull_request' && !contains(fromJSON(needs.testmask.outputs.targets), 'test') && !contains(fromJSON(needs.testmask.outputs.targets), 'test-exp-ssh') }} - uses: actions/github-script@v8 + uses: actions/github-script@ed597411d8f924073f98dfc5c65a23a2325f34cd # v8.0.0 with: github-token: ${{ steps.generate-check-token.outputs.token }} script: | @@ -443,7 +443,7 @@ jobs: # Use Checks API (not Statuses API) to match the required "Integration Tests" check. - name: Auto-approve for merge group if: ${{ github.event_name == 'merge_group' }} - uses: actions/github-script@v8 + uses: actions/github-script@ed597411d8f924073f98dfc5c65a23a2325f34cd # v8.0.0 with: github-token: ${{ steps.generate-check-token.outputs.token }} script: | @@ -487,7 +487,7 @@ jobs: steps: - name: Skip integration tests - uses: actions/github-script@v8 + uses: actions/github-script@ed597411d8f924073f98dfc5c65a23a2325f34cd # v8.0.0 with: script: |- await github.rest.checks.create({ diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 86724b7e70..b425fa546a 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -115,7 +115,7 @@ jobs: AZURE_CLIENT_SECRET: ${{ secrets.DECO_SIGN_AZURE_CLIENT_SECRET }} - name: Upload Windows artifacts to GitHub Actions - uses: actions/upload-artifact@v7 + uses: actions/upload-artifact@bbbca2ddaa5d8feaa63e36b76fdaad77386f024f # v7.0.0 with: name: windows-artifacts path: | @@ -135,7 +135,7 @@ jobs: steps: - name: Download Windows artifacts - uses: actions/download-artifact@v8 + uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1 with: name: windows-artifacts path: dist diff --git a/.github/workflows/tagging.yml b/.github/workflows/tagging.yml index 39e95993e4..04f0565a94 100644 --- a/.github/workflows/tagging.yml +++ b/.github/workflows/tagging.yml @@ -34,13 +34,13 @@ jobs: steps: - name: Generate GitHub App Token id: generate-token - uses: actions/create-github-app-token@v3 + uses: actions/create-github-app-token@f8d387b68d61c58ab83c6c016672934102569859 # v3.0.0 with: app-id: ${{ secrets.DECO_SDK_TAGGING_APP_ID }} private-key: ${{ secrets.DECO_SDK_TAGGING_PRIVATE_KEY }} - name: Checkout repository - uses: actions/checkout@v6.0.2 + uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 with: fetch-depth: 0 token: ${{ steps.generate-token.outputs.token }} From c851fa5b77278485d30324be789184700874d6c6 Mon Sep 17 00:00:00 2001 From: Denis Bilenko Date: Mon, 23 Mar 2026 22:28:05 +0100 Subject: [PATCH 5/5] Restore per-resource-type warning messages for deploy/destroy Replace the generic "data loss" message with informative per-resource-type messages. A new resourceDestroyMessage map maps each resource type to its specific warning (or empty string for safe types). This map serves as the single source of truth for both the warning text and the safe/unsafe decision. Add TestResourceDestroyMessageIsComplete to ensure every resource type in SupportedResources() has an entry in the map, and vice versa. Co-authored-by: Isaac --- .../cli_defaults/output.txt | 3 +- .../job_pipeline_task/output.txt | 3 +- .../multiple_resources/output.txt | 7 +- .../pipeline_fields/output.txt | 3 +- .../validation_errors/output.txt | 3 +- .../deploy/snapshot-comparison/output.txt | 6 +- .../bind/dashboard/recreation/output.txt | 3 +- .../bind/pipelines/recreate/output.txt | 6 +- .../bind/secret-scope/out.deploy.direct.txt | 9 ++ .../secret-scope/out.deploy.terraform.txt | 6 + .../deployment/bind/secret-scope/output.txt | 10 -- .../deployment/bind/secret-scope/script | 2 +- .../deployment/unbind/grants/output.txt | 3 +- .../bundle/destroy/all-resources/output.txt | 5 +- .../lifecycle/prevent-destroy/out.direct.txt | 10 +- .../prevent-destroy/out.terraform.txt | 10 +- acceptance/bundle/migrate/runas/output.txt | 3 +- .../pipelines_recreate/output.txt | 6 +- .../resource_deps/remote_app_url/output.txt | 3 +- .../out.destroy.direct.txt | 5 +- .../out.destroy.terraform.txt | 5 +- .../bundle/resources/alerts/basic/output.txt | 3 +- .../catalogs/auto-approve/output.txt | 5 +- .../resources/catalogs/basic/output.txt | 3 +- .../catalogs/with-schemas/output.txt | 5 +- .../change-embed-credentials/output.txt | 3 +- .../dashboards/change-name/output.txt | 3 +- .../dashboards/change-parent-path/output.txt | 6 +- .../change-serialized-dashboard/output.txt | 3 +- .../dataset-catalog-schema/output.txt | 3 +- .../resources/dashboards/destroy/output.txt | 3 +- .../dashboards/detect-change/output.txt | 3 +- .../dashboards/nested-folders/output.txt | 3 +- .../resources/dashboards/simple/output.txt | 3 +- .../simple_outside_bundle_root/output.txt | 3 +- .../dashboards/simple_syncroot/output.txt | 3 +- .../database_catalogs/basic/output.txt | 5 +- .../single-instance/output.txt | 3 +- .../resources/experiments/basic/output.txt | 6 +- .../resources/external_locations/output.txt | 3 +- .../resources/grants/catalogs/output.txt | 3 +- .../grants/registered_models/output.txt | 5 +- .../grants/schemas/all_privileges/output.txt | 3 +- .../schemas/change_privilege/output.txt | 3 +- .../schemas/duplicate_principals/output.txt | 3 +- .../schemas/duplicate_privileges/output.txt | 3 +- .../resources/grants/volumes/output.txt | 5 +- .../bundle/resources/models/basic/output.txt | 6 +- .../current_can_manage/output.txt | 3 +- .../experiments/current_can_manage/output.txt | 3 +- .../models/current_can_manage/output.txt | 3 +- .../pipelines/current_can_manage/output.txt | 3 +- .../pipelines/current_is_owner/output.txt | 3 +- .../pipelines/empty_list/output.txt | 3 +- .../pipelines/other_can_manage/output.txt | 3 +- .../pipelines/other_is_owner/output.txt | 3 +- .../current_can_manage/output.txt | 3 +- .../allow-duplicate-names/output.txt | 3 +- .../pipelines/auto-approve/output.txt | 6 +- .../pipelines/lakeflow-pipeline/output.txt | 3 +- .../change-ingestion-definition/output.txt | 6 +- .../recreate-keys/change-storage/output.txt | 6 +- .../resources/pipelines/recreate/output.txt | 8 +- .../resources/pipelines/update/output.txt | 3 +- .../postgres_branches/basic/output.txt | 5 +- .../postgres_branches/recreate/output.txt | 8 +- .../update_protected/output.txt | 5 +- .../postgres_endpoints/basic/output.txt | 5 +- .../postgres_endpoints/recreate/output.txt | 5 +- .../update_autoscaling/output.txt | 5 +- .../postgres_projects/basic/output.txt | 3 +- .../postgres_projects/recreate/output.txt | 6 +- .../update_display_name/output.txt | 3 +- .../change_assets_dir/out.deploy.direct.txt | 3 +- .../change_assets_dir/output.txt | 3 +- .../change_output_schema_name/output.txt | 3 +- .../change_table_name/out.deploy.direct.txt | 3 +- .../change_table_name/output.txt | 3 +- .../quality_monitors/create/output.txt | 3 +- .../registered_models/basic/output.txt | 12 +- .../resources/schemas/auto-approve/output.txt | 8 +- .../resources/schemas/recreate/output.txt | 3 +- .../resources/secret_scopes/basic/output.txt | 6 +- .../secret_scopes/delete_scope/output.txt | 6 +- .../permissions-collapse/output.txt | 3 +- .../secret_scopes/permissions/output.txt | 6 +- .../synced_database_tables/basic/output.txt | 5 +- .../volumes/change-comment/output.txt | 3 +- .../volumes/change-schema-name/output.txt | 3 +- .../volumes/set-storage-location/output.txt | 3 +- .../bundle/state/state_present/output.txt | 3 +- .../bundle/summary/modified_status/output.txt | 7 +- .../integration_classic/output.txt | 6 +- .../bundle/user_agent/simple/output.txt | 3 +- .../pipelines/deploy/auto-approve/output.txt | 6 +- .../pipelines/destroy/auto-approve/output.txt | 3 +- .../destroy/destroy-pipeline/output.txt | 3 +- .../pipelines/destroy/force-lock/output.txt | 3 +- acceptance/pipelines/e2e/output.txt | 3 +- bundle/phases/deploy.go | 121 ++++++++---------- bundle/phases/deploy_test.go | 22 ++++ bundle/phases/destroy.go | 16 +-- bundle/phases/messages.go | 91 +++++++++++-- 103 files changed, 426 insertions(+), 255 deletions(-) create mode 100644 acceptance/bundle/deployment/bind/secret-scope/out.deploy.direct.txt create mode 100644 acceptance/bundle/deployment/bind/secret-scope/out.deploy.terraform.txt create mode 100644 bundle/phases/deploy_test.go diff --git a/acceptance/bundle/config-remote-sync/cli_defaults/output.txt b/acceptance/bundle/config-remote-sync/cli_defaults/output.txt index f012be47d6..a62292a78b 100644 --- a/acceptance/bundle/config-remote-sync/cli_defaults/output.txt +++ b/acceptance/bundle/config-remote-sync/cli_defaults/output.txt @@ -56,7 +56,8 @@ The following resources will be deleted: delete resources.jobs.job2 delete resources.pipelines.pipeline1 -The following resources may contain data that will be lost upon deletion: + +This action will result in the deletion or recreation of the following Lakeflow Spark Declarative Pipelines along with the Streaming Tables (STs) and Materialized Views (MVs) managed by them: delete resources.pipelines.pipeline1 All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/test-bundle-[UNIQUE_NAME]/default diff --git a/acceptance/bundle/config-remote-sync/job_pipeline_task/output.txt b/acceptance/bundle/config-remote-sync/job_pipeline_task/output.txt index 6bf94b2fe3..c97d86b515 100644 --- a/acceptance/bundle/config-remote-sync/job_pipeline_task/output.txt +++ b/acceptance/bundle/config-remote-sync/job_pipeline_task/output.txt @@ -39,7 +39,8 @@ The following resources will be deleted: delete resources.jobs.my_job delete resources.pipelines.my_pipeline -The following resources may contain data that will be lost upon deletion: + +This action will result in the deletion or recreation of the following Lakeflow Spark Declarative Pipelines along with the Streaming Tables (STs) and Materialized Views (MVs) managed by them: delete resources.pipelines.my_pipeline All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/test-bundle-[UNIQUE_NAME]/default diff --git a/acceptance/bundle/config-remote-sync/multiple_resources/output.txt b/acceptance/bundle/config-remote-sync/multiple_resources/output.txt index 8d2caff50f..fb06db8f2f 100644 --- a/acceptance/bundle/config-remote-sync/multiple_resources/output.txt +++ b/acceptance/bundle/config-remote-sync/multiple_resources/output.txt @@ -57,9 +57,14 @@ The following resources will be deleted: delete resources.sql_warehouses.test_warehouse delete resources.volumes.test_volume -The following resources may contain data that will be lost upon deletion: + +This action will result in the deletion or recreation of the following MLflow experiments along with all their runs, metrics, and artifacts: delete resources.experiments.test_experiment + +This action will result in the deletion or recreation of the following registered models along with all their versions: delete resources.registered_models.test_model + +This action will result in the deletion or recreation of the following volumes. For managed volumes, the files stored in the volume are also deleted from your cloud tenant within 30 days. For external volumes, the metadata about the volume is removed from the catalog, but the underlying files are not deleted: delete resources.volumes.test_volume All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/test-bundle-[UNIQUE_NAME]/default diff --git a/acceptance/bundle/config-remote-sync/pipeline_fields/output.txt b/acceptance/bundle/config-remote-sync/pipeline_fields/output.txt index b112bfa2ab..d7043cc616 100644 --- a/acceptance/bundle/config-remote-sync/pipeline_fields/output.txt +++ b/acceptance/bundle/config-remote-sync/pipeline_fields/output.txt @@ -55,7 +55,8 @@ Resource: resources.pipelines.my_pipeline The following resources will be deleted: delete resources.pipelines.my_pipeline -The following resources may contain data that will be lost upon deletion: + +This action will result in the deletion or recreation of the following Lakeflow Spark Declarative Pipelines along with the Streaming Tables (STs) and Materialized Views (MVs) managed by them: delete resources.pipelines.my_pipeline All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/test-bundle-[UNIQUE_NAME]/default diff --git a/acceptance/bundle/config-remote-sync/validation_errors/output.txt b/acceptance/bundle/config-remote-sync/validation_errors/output.txt index a888dd788e..6285a4a9bc 100644 --- a/acceptance/bundle/config-remote-sync/validation_errors/output.txt +++ b/acceptance/bundle/config-remote-sync/validation_errors/output.txt @@ -50,7 +50,8 @@ The following resources will be deleted: delete resources.jobs.my_job delete resources.pipelines.my_pipeline -The following resources may contain data that will be lost upon deletion: + +This action will result in the deletion or recreation of the following Lakeflow Spark Declarative Pipelines along with the Streaming Tables (STs) and Materialized Views (MVs) managed by them: delete resources.pipelines.my_pipeline All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/test-bundle-[UNIQUE_NAME]/default diff --git a/acceptance/bundle/deploy/snapshot-comparison/output.txt b/acceptance/bundle/deploy/snapshot-comparison/output.txt index 2967de0388..38a8a8c04e 100644 --- a/acceptance/bundle/deploy/snapshot-comparison/output.txt +++ b/acceptance/bundle/deploy/snapshot-comparison/output.txt @@ -44,7 +44,8 @@ The following resources will be deleted: delete resources.jobs.test_job delete resources.pipelines.test_pipeline -The following resources may contain data that will be lost upon deletion: + +This action will result in the deletion or recreation of the following Lakeflow Spark Declarative Pipelines along with the Streaming Tables (STs) and Materialized Views (MVs) managed by them: delete resources.pipelines.test_pipeline All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/snapshot-test-1-[UNIQUE_NAME]/default @@ -58,7 +59,8 @@ The following resources will be deleted: delete resources.jobs.test_job delete resources.pipelines.test_pipeline -The following resources may contain data that will be lost upon deletion: + +This action will result in the deletion or recreation of the following Lakeflow Spark Declarative Pipelines along with the Streaming Tables (STs) and Materialized Views (MVs) managed by them: delete resources.pipelines.test_pipeline All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/snapshot-test-2-[UNIQUE_NAME]/default diff --git a/acceptance/bundle/deployment/bind/dashboard/recreation/output.txt b/acceptance/bundle/deployment/bind/dashboard/recreation/output.txt index bbe6dbd08f..cd605ee9ef 100644 --- a/acceptance/bundle/deployment/bind/dashboard/recreation/output.txt +++ b/acceptance/bundle/deployment/bind/dashboard/recreation/output.txt @@ -15,8 +15,7 @@ Plan: 1 to add, 0 to change, 1 to delete, 0 unchanged >>> errcode [CLI] bundle deploy Uploading bundle files to /Workspace/Users/[USERNAME]/.bundle/test-bundle-[UNIQUE_NAME]/default/files... -This action will result in the deletion or recreation of the following resources. -Deleted or recreated resources may result in data loss or other irreversible consequences: +This action will result in the deletion or recreation of the following dashboards. Recreated dashboards will have new IDs and permanent URLs: recreate resources.dashboards.dashboard1 Error: the deployment requires destructive actions, but current console does not support prompting. Please specify --auto-approve if you would like to skip prompts and proceed diff --git a/acceptance/bundle/deployment/bind/pipelines/recreate/output.txt b/acceptance/bundle/deployment/bind/pipelines/recreate/output.txt index 14bc5c9a0a..24dadbd1f7 100644 --- a/acceptance/bundle/deployment/bind/pipelines/recreate/output.txt +++ b/acceptance/bundle/deployment/bind/pipelines/recreate/output.txt @@ -11,8 +11,7 @@ Plan: 1 to add, 0 to change, 1 to delete, 0 unchanged >>> musterr [CLI] bundle deploy Uploading bundle files to /Workspace/Users/[USERNAME]/.bundle/test-pipeline-recreate-[UNIQUE_NAME]/default/files... -This action will result in the deletion or recreation of the following resources. -Deleted or recreated resources may result in data loss or other irreversible consequences: +This action will result in the deletion or recreation of the following Lakeflow Spark Declarative Pipelines along with the Streaming Tables (STs) and Materialized Views (MVs) managed by them: recreate resources.pipelines.foo Error: the deployment requires destructive actions, but current console does not support prompting. Please specify --auto-approve if you would like to skip prompts and proceed @@ -20,8 +19,7 @@ Error: the deployment requires destructive actions, but current console does not >>> [CLI] bundle deploy --auto-approve Uploading bundle files to /Workspace/Users/[USERNAME]/.bundle/test-pipeline-recreate-[UNIQUE_NAME]/default/files... -This action will result in the deletion or recreation of the following resources. -Deleted or recreated resources may result in data loss or other irreversible consequences: +This action will result in the deletion or recreation of the following Lakeflow Spark Declarative Pipelines along with the Streaming Tables (STs) and Materialized Views (MVs) managed by them: recreate resources.pipelines.foo Deploying resources... Updating deployment state... diff --git a/acceptance/bundle/deployment/bind/secret-scope/out.deploy.direct.txt b/acceptance/bundle/deployment/bind/secret-scope/out.deploy.direct.txt new file mode 100644 index 0000000000..7a793cef47 --- /dev/null +++ b/acceptance/bundle/deployment/bind/secret-scope/out.deploy.direct.txt @@ -0,0 +1,9 @@ + +>>> [CLI] bundle deploy --auto-approve +Uploading bundle files to /Workspace/Users/[USERNAME]/.bundle/bind-secret-scope-test-[UNIQUE_NAME]/default/files... + +This action will result in the deletion or recreation of the following secret scopes. All secrets stored in them will be permanently lost: + recreate resources.secret_scopes.secret_scope1 +Deploying resources... +Updating deployment state... +Deployment complete! diff --git a/acceptance/bundle/deployment/bind/secret-scope/out.deploy.terraform.txt b/acceptance/bundle/deployment/bind/secret-scope/out.deploy.terraform.txt new file mode 100644 index 0000000000..6720c9777f --- /dev/null +++ b/acceptance/bundle/deployment/bind/secret-scope/out.deploy.terraform.txt @@ -0,0 +1,6 @@ + +>>> [CLI] bundle deploy --auto-approve +Uploading bundle files to /Workspace/Users/[USERNAME]/.bundle/bind-secret-scope-test-[UNIQUE_NAME]/default/files... +Deploying resources... +Updating deployment state... +Deployment complete! diff --git a/acceptance/bundle/deployment/bind/secret-scope/output.txt b/acceptance/bundle/deployment/bind/secret-scope/output.txt index d17133a1c1..583f231657 100644 --- a/acceptance/bundle/deployment/bind/secret-scope/output.txt +++ b/acceptance/bundle/deployment/bind/secret-scope/output.txt @@ -6,16 +6,6 @@ Updating deployment state... Successfully bound secret_scope with an id 'test-secret-scope-[UNIQUE_NAME]' Run 'bundle deploy' to deploy changes to your workspace ->>> [CLI] bundle deploy --auto-approve -Uploading bundle files to /Workspace/Users/[USERNAME]/.bundle/bind-secret-scope-test-[UNIQUE_NAME]/default/files... - -This action will result in the deletion or recreation of the following resources. -Deleted or recreated resources may result in data loss or other irreversible consequences: - recreate resources.secret_scopes.secret_scope1 -Deploying resources... -Updating deployment state... -Deployment complete! - >>> [CLI] secrets list-scopes -o json { "backend_type": "DATABRICKS", diff --git a/acceptance/bundle/deployment/bind/secret-scope/script b/acceptance/bundle/deployment/bind/secret-scope/script index d8cf9c6e2c..9a0ddde3d8 100644 --- a/acceptance/bundle/deployment/bind/secret-scope/script +++ b/acceptance/bundle/deployment/bind/secret-scope/script @@ -12,7 +12,7 @@ trap cleanup EXIT trace $CLI bundle deployment bind secret_scope1 "${SECRET_SCOPE_NAME}" --auto-approve -trace $CLI bundle deploy --auto-approve +trace $CLI bundle deploy --auto-approve &> out.deploy.$DATABRICKS_BUNDLE_ENGINE.txt trace $CLI secrets list-scopes -o json | jq --arg value ${SECRET_SCOPE_NAME} '.[] | select(.name == $value)' diff --git a/acceptance/bundle/deployment/unbind/grants/output.txt b/acceptance/bundle/deployment/unbind/grants/output.txt index de14375ae5..c379eb076c 100644 --- a/acceptance/bundle/deployment/unbind/grants/output.txt +++ b/acceptance/bundle/deployment/unbind/grants/output.txt @@ -37,7 +37,8 @@ Deployment complete! The following resources will be deleted: delete resources.schemas.schema_1 -The following resources may contain data that will be lost upon deletion: + +This action will result in the deletion or recreation of the following UC schemas along with all the tables and views they contain: delete resources.schemas.schema_1 All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/[UNIQUE_NAME] diff --git a/acceptance/bundle/destroy/all-resources/output.txt b/acceptance/bundle/destroy/all-resources/output.txt index 8ff63e4f7b..ce7b58ccac 100644 --- a/acceptance/bundle/destroy/all-resources/output.txt +++ b/acceptance/bundle/destroy/all-resources/output.txt @@ -10,8 +10,11 @@ The following resources will be deleted: delete resources.pipelines.my_pipeline delete resources.schemas.my_schema -The following resources may contain data that will be lost upon deletion: + +This action will result in the deletion or recreation of the following Lakeflow Spark Declarative Pipelines along with the Streaming Tables (STs) and Materialized Views (MVs) managed by them: delete resources.pipelines.my_pipeline + +This action will result in the deletion or recreation of the following UC schemas along with all the tables and views they contain: delete resources.schemas.my_schema All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/test-bundle/default diff --git a/acceptance/bundle/lifecycle/prevent-destroy/out.direct.txt b/acceptance/bundle/lifecycle/prevent-destroy/out.direct.txt index 8326d97144..80c466fd93 100644 --- a/acceptance/bundle/lifecycle/prevent-destroy/out.direct.txt +++ b/acceptance/bundle/lifecycle/prevent-destroy/out.direct.txt @@ -35,9 +35,10 @@ Plan: 2 to add, 0 to change, 2 to delete, 0 unchanged >>> [CLI] bundle deploy --auto-approve Uploading bundle files to /Workspace/Users/[USERNAME]/.bundle/prevent-destroy/default/files... -This action will result in the deletion or recreation of the following resources. -Deleted or recreated resources may result in data loss or other irreversible consequences: +This action will result in the deletion or recreation of the following Lakeflow Spark Declarative Pipelines along with the Streaming Tables (STs) and Materialized Views (MVs) managed by them: recreate resources.pipelines.my_pipelines + +This action will result in the deletion or recreation of the following UC schemas along with all the tables and views they contain: recreate resources.schemas.my_schema Deploying resources... Updating deployment state... @@ -52,9 +53,10 @@ Plan: 0 to add, 0 to change, 2 to delete, 0 unchanged >>> [CLI] bundle deploy --auto-approve Uploading bundle files to /Workspace/Users/[USERNAME]/.bundle/prevent-destroy/default/files... -This action will result in the deletion or recreation of the following resources. -Deleted or recreated resources may result in data loss or other irreversible consequences: +This action will result in the deletion or recreation of the following Lakeflow Spark Declarative Pipelines along with the Streaming Tables (STs) and Materialized Views (MVs) managed by them: delete resources.pipelines.my_pipelines + +This action will result in the deletion or recreation of the following UC schemas along with all the tables and views they contain: delete resources.schemas.my_schema Deploying resources... Updating deployment state... diff --git a/acceptance/bundle/lifecycle/prevent-destroy/out.terraform.txt b/acceptance/bundle/lifecycle/prevent-destroy/out.terraform.txt index e7aafa5185..77580c0274 100644 --- a/acceptance/bundle/lifecycle/prevent-destroy/out.terraform.txt +++ b/acceptance/bundle/lifecycle/prevent-destroy/out.terraform.txt @@ -119,9 +119,10 @@ Plan: 2 to add, 0 to change, 2 to delete, 0 unchanged >>> [CLI] bundle deploy --auto-approve Uploading bundle files to /Workspace/Users/[USERNAME]/.bundle/prevent-destroy/default/files... -This action will result in the deletion or recreation of the following resources. -Deleted or recreated resources may result in data loss or other irreversible consequences: +This action will result in the deletion or recreation of the following Lakeflow Spark Declarative Pipelines along with the Streaming Tables (STs) and Materialized Views (MVs) managed by them: recreate resources.pipelines.my_pipelines + +This action will result in the deletion or recreation of the following UC schemas along with all the tables and views they contain: recreate resources.schemas.my_schema Deploying resources... Updating deployment state... @@ -136,9 +137,10 @@ Plan: 0 to add, 0 to change, 2 to delete, 0 unchanged >>> [CLI] bundle deploy --auto-approve Uploading bundle files to /Workspace/Users/[USERNAME]/.bundle/prevent-destroy/default/files... -This action will result in the deletion or recreation of the following resources. -Deleted or recreated resources may result in data loss or other irreversible consequences: +This action will result in the deletion or recreation of the following Lakeflow Spark Declarative Pipelines along with the Streaming Tables (STs) and Materialized Views (MVs) managed by them: delete resources.pipelines.my_pipelines + +This action will result in the deletion or recreation of the following UC schemas along with all the tables and views they contain: delete resources.schemas.my_schema Deploying resources... Updating deployment state... diff --git a/acceptance/bundle/migrate/runas/output.txt b/acceptance/bundle/migrate/runas/output.txt index 4176c40a62..53db06ae86 100644 --- a/acceptance/bundle/migrate/runas/output.txt +++ b/acceptance/bundle/migrate/runas/output.txt @@ -151,7 +151,8 @@ See https://docs.databricks.com/dev-tools/bundles/permissions.html to learn more The following resources will be deleted: delete resources.pipelines.foo -The following resources may contain data that will be lost upon deletion: + +This action will result in the deletion or recreation of the following Lakeflow Spark Declarative Pipelines along with the Streaming Tables (STs) and Materialized Views (MVs) managed by them: delete resources.pipelines.foo All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/dabs_revenue-[UNIQUE_NAME]/production diff --git a/acceptance/bundle/resource_deps/pipelines_recreate/output.txt b/acceptance/bundle/resource_deps/pipelines_recreate/output.txt index 6ddeff6f28..58d50457eb 100644 --- a/acceptance/bundle/resource_deps/pipelines_recreate/output.txt +++ b/acceptance/bundle/resource_deps/pipelines_recreate/output.txt @@ -28,8 +28,7 @@ Plan: 1 to add, 1 to change, 1 to delete, 0 unchanged >>> [CLI] bundle deploy --auto-approve Uploading bundle files to /Workspace/Users/[USERNAME]/.bundle/test-bundle/default/files... -This action will result in the deletion or recreation of the following resources. -Deleted or recreated resources may result in data loss or other irreversible consequences: +This action will result in the deletion or recreation of the following Lakeflow Spark Declarative Pipelines along with the Streaming Tables (STs) and Materialized Views (MVs) managed by them: recreate resources.pipelines.foo Deploying resources... Updating deployment state... @@ -105,7 +104,8 @@ The following resources will be deleted: delete resources.jobs.bar delete resources.pipelines.foo -The following resources may contain data that will be lost upon deletion: + +This action will result in the deletion or recreation of the following Lakeflow Spark Declarative Pipelines along with the Streaming Tables (STs) and Materialized Views (MVs) managed by them: delete resources.pipelines.foo All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/test-bundle/default diff --git a/acceptance/bundle/resource_deps/remote_app_url/output.txt b/acceptance/bundle/resource_deps/remote_app_url/output.txt index 04d9683431..c0f806a48f 100644 --- a/acceptance/bundle/resource_deps/remote_app_url/output.txt +++ b/acceptance/bundle/resource_deps/remote_app_url/output.txt @@ -82,7 +82,8 @@ The following resources will be deleted: delete resources.apps.myapp delete resources.pipelines.mypipeline -The following resources may contain data that will be lost upon deletion: + +This action will result in the deletion or recreation of the following Lakeflow Spark Declarative Pipelines along with the Streaming Tables (STs) and Materialized Views (MVs) managed by them: delete resources.pipelines.mypipeline All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/test-bundle/default diff --git a/acceptance/bundle/resource_deps/remote_field_storage_location/out.destroy.direct.txt b/acceptance/bundle/resource_deps/remote_field_storage_location/out.destroy.direct.txt index 9a9d7c04d7..1471877012 100644 --- a/acceptance/bundle/resource_deps/remote_field_storage_location/out.destroy.direct.txt +++ b/acceptance/bundle/resource_deps/remote_field_storage_location/out.destroy.direct.txt @@ -3,8 +3,11 @@ The following resources will be deleted: delete resources.volumes.bar delete resources.volumes.foo -The following resources may contain data that will be lost upon deletion: + +This action will result in the deletion or recreation of the following UC schemas along with all the tables and views they contain: delete resources.schemas.my + +This action will result in the deletion or recreation of the following volumes. For managed volumes, the files stored in the volume are also deleted from your cloud tenant within 30 days. For external volumes, the metadata about the volume is removed from the catalog, but the underlying files are not deleted: delete resources.volumes.bar delete resources.volumes.foo diff --git a/acceptance/bundle/resource_deps/remote_field_storage_location/out.destroy.terraform.txt b/acceptance/bundle/resource_deps/remote_field_storage_location/out.destroy.terraform.txt index 68623a03bb..9b72534496 100644 --- a/acceptance/bundle/resource_deps/remote_field_storage_location/out.destroy.terraform.txt +++ b/acceptance/bundle/resource_deps/remote_field_storage_location/out.destroy.terraform.txt @@ -2,8 +2,11 @@ The following resources will be deleted: delete resources.schemas.my delete resources.volumes.bar -The following resources may contain data that will be lost upon deletion: + +This action will result in the deletion or recreation of the following UC schemas along with all the tables and views they contain: delete resources.schemas.my + +This action will result in the deletion or recreation of the following volumes. For managed volumes, the files stored in the volume are also deleted from your cloud tenant within 30 days. For external volumes, the metadata about the volume is removed from the catalog, but the underlying files are not deleted: delete resources.volumes.bar All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/testbundle-[UNIQUE_NAME]/default diff --git a/acceptance/bundle/resources/alerts/basic/output.txt b/acceptance/bundle/resources/alerts/basic/output.txt index 118c7d9299..2eb8e2485a 100644 --- a/acceptance/bundle/resources/alerts/basic/output.txt +++ b/acceptance/bundle/resources/alerts/basic/output.txt @@ -56,7 +56,8 @@ Plan: 0 to add, 0 to change, 0 to delete, 2 unchanged The following resources will be deleted: delete resources.alerts.myalert -The following resources may contain data that will be lost upon deletion: + +This action will result in the deletion or recreation of the following alerts. Evaluation and notification history will be permanently lost: delete resources.alerts.myalert All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/alerts-basic-[UNIQUE_NAME]/default diff --git a/acceptance/bundle/resources/catalogs/auto-approve/output.txt b/acceptance/bundle/resources/catalogs/auto-approve/output.txt index 6bedeadb4a..e3e33a7a3f 100644 --- a/acceptance/bundle/resources/catalogs/auto-approve/output.txt +++ b/acceptance/bundle/resources/catalogs/auto-approve/output.txt @@ -48,8 +48,11 @@ The following resources will be deleted: delete resources.catalogs.bar delete resources.schemas.foo -The following resources may contain data that will be lost upon deletion: + +This action will result in the deletion or recreation of the following UC catalogs along with all the schemas, tables, and views they contain: delete resources.catalogs.bar + +This action will result in the deletion or recreation of the following UC schemas along with all the tables and views they contain: delete resources.schemas.foo All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/[UNIQUE_NAME] diff --git a/acceptance/bundle/resources/catalogs/basic/output.txt b/acceptance/bundle/resources/catalogs/basic/output.txt index 68d7ade795..f274b49dc2 100644 --- a/acceptance/bundle/resources/catalogs/basic/output.txt +++ b/acceptance/bundle/resources/catalogs/basic/output.txt @@ -36,7 +36,8 @@ Deployment complete! The following resources will be deleted: delete resources.catalogs.test_catalog -The following resources may contain data that will be lost upon deletion: + +This action will result in the deletion or recreation of the following UC catalogs along with all the schemas, tables, and views they contain: delete resources.catalogs.test_catalog All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/[UNIQUE_NAME] diff --git a/acceptance/bundle/resources/catalogs/with-schemas/output.txt b/acceptance/bundle/resources/catalogs/with-schemas/output.txt index 9c5c51b82b..0a1c657598 100644 --- a/acceptance/bundle/resources/catalogs/with-schemas/output.txt +++ b/acceptance/bundle/resources/catalogs/with-schemas/output.txt @@ -52,8 +52,11 @@ The following resources will be deleted: delete resources.catalogs.test_catalog delete resources.schemas.test_schema -The following resources may contain data that will be lost upon deletion: + +This action will result in the deletion or recreation of the following UC catalogs along with all the schemas, tables, and views they contain: delete resources.catalogs.test_catalog + +This action will result in the deletion or recreation of the following UC schemas along with all the tables and views they contain: delete resources.schemas.test_schema All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/[UNIQUE_NAME] diff --git a/acceptance/bundle/resources/dashboards/change-embed-credentials/output.txt b/acceptance/bundle/resources/dashboards/change-embed-credentials/output.txt index 72b5cc7f82..11a33a1cb0 100644 --- a/acceptance/bundle/resources/dashboards/change-embed-credentials/output.txt +++ b/acceptance/bundle/resources/dashboards/change-embed-credentials/output.txt @@ -57,7 +57,8 @@ Deployment complete! The following resources will be deleted: delete resources.dashboards.my_dashboard -The following resources may contain data that will be lost upon deletion: + +This action will result in the deletion or recreation of the following dashboards. Recreated dashboards will have new IDs and permanent URLs: delete resources.dashboards.my_dashboard All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/change-embed-credentials-[UNIQUE_NAME]/default diff --git a/acceptance/bundle/resources/dashboards/change-name/output.txt b/acceptance/bundle/resources/dashboards/change-name/output.txt index 283798213b..c59f627b42 100644 --- a/acceptance/bundle/resources/dashboards/change-name/output.txt +++ b/acceptance/bundle/resources/dashboards/change-name/output.txt @@ -45,7 +45,8 @@ Deployment complete! The following resources will be deleted: delete resources.dashboards.my_dashboard -The following resources may contain data that will be lost upon deletion: + +This action will result in the deletion or recreation of the following dashboards. Recreated dashboards will have new IDs and permanent URLs: delete resources.dashboards.my_dashboard All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/change-name-[UNIQUE_NAME]/default diff --git a/acceptance/bundle/resources/dashboards/change-parent-path/output.txt b/acceptance/bundle/resources/dashboards/change-parent-path/output.txt index f70414d313..8725664ba2 100644 --- a/acceptance/bundle/resources/dashboards/change-parent-path/output.txt +++ b/acceptance/bundle/resources/dashboards/change-parent-path/output.txt @@ -28,8 +28,7 @@ Plan: 1 to add, 0 to change, 1 to delete, 0 unchanged >>> [CLI] bundle deploy --auto-approve Uploading bundle files to /Workspace/Users/[USERNAME]/.bundle/change-parent-path-[UNIQUE_NAME]/default/files... -This action will result in the deletion or recreation of the following resources. -Deleted or recreated resources may result in data loss or other irreversible consequences: +This action will result in the deletion or recreation of the following dashboards. Recreated dashboards will have new IDs and permanent URLs: recreate resources.dashboards.my_dashboard Deploying resources... Updating deployment state... @@ -49,7 +48,8 @@ Deployment complete! The following resources will be deleted: delete resources.dashboards.my_dashboard -The following resources may contain data that will be lost upon deletion: + +This action will result in the deletion or recreation of the following dashboards. Recreated dashboards will have new IDs and permanent URLs: delete resources.dashboards.my_dashboard All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/change-parent-path-[UNIQUE_NAME]/default diff --git a/acceptance/bundle/resources/dashboards/change-serialized-dashboard/output.txt b/acceptance/bundle/resources/dashboards/change-serialized-dashboard/output.txt index 07591f5158..d6ec8e70b6 100644 --- a/acceptance/bundle/resources/dashboards/change-serialized-dashboard/output.txt +++ b/acceptance/bundle/resources/dashboards/change-serialized-dashboard/output.txt @@ -57,7 +57,8 @@ Deployment complete! The following resources will be deleted: delete resources.dashboards.my_dashboard -The following resources may contain data that will be lost upon deletion: + +This action will result in the deletion or recreation of the following dashboards. Recreated dashboards will have new IDs and permanent URLs: delete resources.dashboards.my_dashboard All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/change-serialized-dashboard-[UNIQUE_NAME]/default diff --git a/acceptance/bundle/resources/dashboards/dataset-catalog-schema/output.txt b/acceptance/bundle/resources/dashboards/dataset-catalog-schema/output.txt index 619d9c8ac2..82e292dcb2 100644 --- a/acceptance/bundle/resources/dashboards/dataset-catalog-schema/output.txt +++ b/acceptance/bundle/resources/dashboards/dataset-catalog-schema/output.txt @@ -24,7 +24,8 @@ Deployment complete! The following resources will be deleted: delete resources.dashboards.dashboard1 -The following resources may contain data that will be lost upon deletion: + +This action will result in the deletion or recreation of the following dashboards. Recreated dashboards will have new IDs and permanent URLs: delete resources.dashboards.dashboard1 All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/deploy-dashboard-dataset-test-[UNIQUE_NAME]/default diff --git a/acceptance/bundle/resources/dashboards/destroy/output.txt b/acceptance/bundle/resources/dashboards/destroy/output.txt index e9d6c4ba43..bc2acf607d 100644 --- a/acceptance/bundle/resources/dashboards/destroy/output.txt +++ b/acceptance/bundle/resources/dashboards/destroy/output.txt @@ -15,7 +15,8 @@ Deployment complete! The following resources will be deleted: delete resources.dashboards.dashboard1 -The following resources may contain data that will be lost upon deletion: + +This action will result in the deletion or recreation of the following dashboards. Recreated dashboards will have new IDs and permanent URLs: delete resources.dashboards.dashboard1 All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/destroy-dashboard-[UNIQUE_NAME]/default diff --git a/acceptance/bundle/resources/dashboards/detect-change/output.txt b/acceptance/bundle/resources/dashboards/detect-change/output.txt index 2da7a7dde4..7fbd7f333d 100644 --- a/acceptance/bundle/resources/dashboards/detect-change/output.txt +++ b/acceptance/bundle/resources/dashboards/detect-change/output.txt @@ -107,7 +107,8 @@ Deployment complete! The following resources will be deleted: delete resources.dashboards.file_reference -The following resources may contain data that will be lost upon deletion: + +This action will result in the deletion or recreation of the following dashboards. Recreated dashboards will have new IDs and permanent URLs: delete resources.dashboards.file_reference All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/[UNIQUE_NAME] diff --git a/acceptance/bundle/resources/dashboards/nested-folders/output.txt b/acceptance/bundle/resources/dashboards/nested-folders/output.txt index 21348ef0dd..35fa319e10 100644 --- a/acceptance/bundle/resources/dashboards/nested-folders/output.txt +++ b/acceptance/bundle/resources/dashboards/nested-folders/output.txt @@ -25,7 +25,8 @@ Deployment complete! The following resources will be deleted: delete resources.dashboards.dashboard1 -The following resources may contain data that will be lost upon deletion: + +This action will result in the deletion or recreation of the following dashboards. Recreated dashboards will have new IDs and permanent URLs: delete resources.dashboards.dashboard1 All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/deploy-dashboard-nested-folders-[UNIQUE_NAME]/default diff --git a/acceptance/bundle/resources/dashboards/simple/output.txt b/acceptance/bundle/resources/dashboards/simple/output.txt index d4f7722a3e..73451f5e64 100644 --- a/acceptance/bundle/resources/dashboards/simple/output.txt +++ b/acceptance/bundle/resources/dashboards/simple/output.txt @@ -19,7 +19,8 @@ Deployment complete! The following resources will be deleted: delete resources.dashboards.dashboard1 -The following resources may contain data that will be lost upon deletion: + +This action will result in the deletion or recreation of the following dashboards. Recreated dashboards will have new IDs and permanent URLs: delete resources.dashboards.dashboard1 All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/deploy-dashboard-test-[UNIQUE_NAME]/default diff --git a/acceptance/bundle/resources/dashboards/simple_outside_bundle_root/output.txt b/acceptance/bundle/resources/dashboards/simple_outside_bundle_root/output.txt index bdfc3571db..bab591ca96 100644 --- a/acceptance/bundle/resources/dashboards/simple_outside_bundle_root/output.txt +++ b/acceptance/bundle/resources/dashboards/simple_outside_bundle_root/output.txt @@ -17,7 +17,8 @@ Deployment complete! The following resources will be deleted: delete resources.dashboards.dashboard1 -The following resources may contain data that will be lost upon deletion: + +This action will result in the deletion or recreation of the following dashboards. Recreated dashboards will have new IDs and permanent URLs: delete resources.dashboards.dashboard1 All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/deploy-dashboard-outside-bundle-root-[UNIQUE_NAME]/default diff --git a/acceptance/bundle/resources/dashboards/simple_syncroot/output.txt b/acceptance/bundle/resources/dashboards/simple_syncroot/output.txt index 90648a47e9..d42c79cea3 100644 --- a/acceptance/bundle/resources/dashboards/simple_syncroot/output.txt +++ b/acceptance/bundle/resources/dashboards/simple_syncroot/output.txt @@ -17,7 +17,8 @@ Deployment complete! The following resources will be deleted: delete resources.dashboards.dashboard1 -The following resources may contain data that will be lost upon deletion: + +This action will result in the deletion or recreation of the following dashboards. Recreated dashboards will have new IDs and permanent URLs: delete resources.dashboards.dashboard1 All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/deploy-dashboard-test-[UNIQUE_NAME]/default diff --git a/acceptance/bundle/resources/database_catalogs/basic/output.txt b/acceptance/bundle/resources/database_catalogs/basic/output.txt index c5f97ec46f..7160c4d687 100644 --- a/acceptance/bundle/resources/database_catalogs/basic/output.txt +++ b/acceptance/bundle/resources/database_catalogs/basic/output.txt @@ -47,8 +47,11 @@ The following resources will be deleted: delete resources.database_catalogs.my_catalog delete resources.database_instances.my_instance -The following resources may contain data that will be lost upon deletion: + +This action will result in the deletion or recreation of the following database catalogs. All data stored in them will be permanently lost: delete resources.database_catalogs.my_catalog + +This action will result in the deletion or recreation of the following database instances. All data stored in them will be permanently lost: delete resources.database_instances.my_instance All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/deploy-lakebase-catalog-[UNIQUE_NAME]/default diff --git a/acceptance/bundle/resources/database_instances/single-instance/output.txt b/acceptance/bundle/resources/database_instances/single-instance/output.txt index e3722e0c5f..e80d6e822b 100644 --- a/acceptance/bundle/resources/database_instances/single-instance/output.txt +++ b/acceptance/bundle/resources/database_instances/single-instance/output.txt @@ -59,7 +59,8 @@ Resources: The following resources will be deleted: delete resources.database_instances.my_database -The following resources may contain data that will be lost upon deletion: + +This action will result in the deletion or recreation of the following database instances. All data stored in them will be permanently lost: delete resources.database_instances.my_database All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/deploy-lakebase-single-instance-[UNIQUE_NAME]/default diff --git a/acceptance/bundle/resources/experiments/basic/output.txt b/acceptance/bundle/resources/experiments/basic/output.txt index d4f92aacf8..50822939ff 100644 --- a/acceptance/bundle/resources/experiments/basic/output.txt +++ b/acceptance/bundle/resources/experiments/basic/output.txt @@ -110,8 +110,7 @@ Plan: 1 to add, 0 to change, 1 to delete, 0 unchanged >>> [CLI] bundle deploy --auto-approve Uploading bundle files to /Workspace/Users/[USERNAME]/.bundle/experiment-basic-[UNIQUE_NAME]/default/files... -This action will result in the deletion or recreation of the following resources. -Deleted or recreated resources may result in data loss or other irreversible consequences: +This action will result in the deletion or recreation of the following MLflow experiments along with all their runs, metrics, and artifacts: recreate resources.experiments.my_experiment Deploying resources... Updating deployment state... @@ -196,7 +195,8 @@ Deployment complete! The following resources will be deleted: delete resources.experiments.my_experiment -The following resources may contain data that will be lost upon deletion: + +This action will result in the deletion or recreation of the following MLflow experiments along with all their runs, metrics, and artifacts: delete resources.experiments.my_experiment All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/experiment-basic-[UNIQUE_NAME]/default diff --git a/acceptance/bundle/resources/external_locations/output.txt b/acceptance/bundle/resources/external_locations/output.txt index 9776472308..84ba27a8ac 100644 --- a/acceptance/bundle/resources/external_locations/output.txt +++ b/acceptance/bundle/resources/external_locations/output.txt @@ -105,7 +105,8 @@ The following resources will be deleted: delete resources.catalogs.test_catalog delete resources.external_locations.test_location -The following resources may contain data that will be lost upon deletion: + +This action will result in the deletion or recreation of the following UC catalogs along with all the schemas, tables, and views they contain: delete resources.catalogs.test_catalog All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/[UNIQUE_NAME] diff --git a/acceptance/bundle/resources/grants/catalogs/output.txt b/acceptance/bundle/resources/grants/catalogs/output.txt index 8d37fba3dc..2a72ee39df 100644 --- a/acceptance/bundle/resources/grants/catalogs/output.txt +++ b/acceptance/bundle/resources/grants/catalogs/output.txt @@ -74,7 +74,8 @@ Deployment complete! The following resources will be deleted: delete resources.catalogs.grants_catalog -The following resources may contain data that will be lost upon deletion: + +This action will result in the deletion or recreation of the following UC catalogs along with all the schemas, tables, and views they contain: delete resources.catalogs.grants_catalog All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/catalog-grants-[UNIQUE_NAME]/default diff --git a/acceptance/bundle/resources/grants/registered_models/output.txt b/acceptance/bundle/resources/grants/registered_models/output.txt index c5b3aac338..38dcdd2ed7 100644 --- a/acceptance/bundle/resources/grants/registered_models/output.txt +++ b/acceptance/bundle/resources/grants/registered_models/output.txt @@ -28,8 +28,11 @@ The following resources will be deleted: delete resources.registered_models.my_registered_model delete resources.schemas.my_schema -The following resources may contain data that will be lost upon deletion: + +This action will result in the deletion or recreation of the following registered models along with all their versions: delete resources.registered_models.my_registered_model + +This action will result in the deletion or recreation of the following UC schemas along with all the tables and views they contain: delete resources.schemas.my_schema All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/deploy-registered-models-basic-[UNIQUE_NAME]/default diff --git a/acceptance/bundle/resources/grants/schemas/all_privileges/output.txt b/acceptance/bundle/resources/grants/schemas/all_privileges/output.txt index 47685a2227..306f3585ee 100644 --- a/acceptance/bundle/resources/grants/schemas/all_privileges/output.txt +++ b/acceptance/bundle/resources/grants/schemas/all_privileges/output.txt @@ -7,7 +7,8 @@ Deployment complete! The following resources will be deleted: delete resources.schemas.apps_schema -The following resources may contain data that will be lost upon deletion: + +This action will result in the deletion or recreation of the following UC schemas along with all the tables and views they contain: delete resources.schemas.apps_schema All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/schema-dup-grants-[UNIQUE_NAME]/default diff --git a/acceptance/bundle/resources/grants/schemas/change_privilege/output.txt b/acceptance/bundle/resources/grants/schemas/change_privilege/output.txt index 464f6ca605..0290aa5a5b 100644 --- a/acceptance/bundle/resources/grants/schemas/change_privilege/output.txt +++ b/acceptance/bundle/resources/grants/schemas/change_privilege/output.txt @@ -74,7 +74,8 @@ Deployment complete! The following resources will be deleted: delete resources.schemas.grants_schema -The following resources may contain data that will be lost upon deletion: + +This action will result in the deletion or recreation of the following UC schemas along with all the tables and views they contain: delete resources.schemas.grants_schema All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/schema-grants-[UNIQUE_NAME]/default diff --git a/acceptance/bundle/resources/grants/schemas/duplicate_principals/output.txt b/acceptance/bundle/resources/grants/schemas/duplicate_principals/output.txt index 35bc0d6ab5..60fab857bc 100644 --- a/acceptance/bundle/resources/grants/schemas/duplicate_principals/output.txt +++ b/acceptance/bundle/resources/grants/schemas/duplicate_principals/output.txt @@ -11,7 +11,8 @@ Deployment complete! The following resources will be deleted: delete resources.schemas.apps_schema -The following resources may contain data that will be lost upon deletion: + +This action will result in the deletion or recreation of the following UC schemas along with all the tables and views they contain: delete resources.schemas.apps_schema All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/schema-dup-grants-[UNIQUE_NAME]/default diff --git a/acceptance/bundle/resources/grants/schemas/duplicate_privileges/output.txt b/acceptance/bundle/resources/grants/schemas/duplicate_privileges/output.txt index b12abb2192..6310afa7d2 100644 --- a/acceptance/bundle/resources/grants/schemas/duplicate_privileges/output.txt +++ b/acceptance/bundle/resources/grants/schemas/duplicate_privileges/output.txt @@ -9,7 +9,8 @@ Deployment complete! The following resources will be deleted: delete resources.schemas.apps_schema -The following resources may contain data that will be lost upon deletion: + +This action will result in the deletion or recreation of the following UC schemas along with all the tables and views they contain: delete resources.schemas.apps_schema All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/schema-dup-grants-[UNIQUE_NAME]/default diff --git a/acceptance/bundle/resources/grants/volumes/output.txt b/acceptance/bundle/resources/grants/volumes/output.txt index 1e121055b9..de0a1f17ae 100644 --- a/acceptance/bundle/resources/grants/volumes/output.txt +++ b/acceptance/bundle/resources/grants/volumes/output.txt @@ -50,8 +50,11 @@ The following resources will be deleted: delete resources.schemas.grants_schema delete resources.volumes.grants_volume -The following resources may contain data that will be lost upon deletion: + +This action will result in the deletion or recreation of the following UC schemas along with all the tables and views they contain: delete resources.schemas.grants_schema + +This action will result in the deletion or recreation of the following volumes. For managed volumes, the files stored in the volume are also deleted from your cloud tenant within 30 days. For external volumes, the metadata about the volume is removed from the catalog, but the underlying files are not deleted: delete resources.volumes.grants_volume All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/schema-grants-[UNIQUE_NAME]/default diff --git a/acceptance/bundle/resources/models/basic/output.txt b/acceptance/bundle/resources/models/basic/output.txt index aa62bd0bf2..e51e8d8958 100644 --- a/acceptance/bundle/resources/models/basic/output.txt +++ b/acceptance/bundle/resources/models/basic/output.txt @@ -64,8 +64,7 @@ Plan: 1 to add, 0 to change, 1 to delete, 0 unchanged >>> [CLI] bundle deploy --auto-approve Uploading bundle files to /Workspace/Users/[USERNAME]/.bundle/deploy-models-basic-[UNIQUE_NAME]/default/files... -This action will result in the deletion or recreation of the following resources. -Deleted or recreated resources may result in data loss or other irreversible consequences: +This action will result in the deletion or recreation of the following MLflow models along with all their versions and artifacts: recreate resources.models.my_model Deploying resources... Updating deployment state... @@ -108,7 +107,8 @@ Deployment complete! The following resources will be deleted: delete resources.models.my_model -The following resources may contain data that will be lost upon deletion: + +This action will result in the deletion or recreation of the following MLflow models along with all their versions and artifacts: delete resources.models.my_model All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/deploy-models-basic-[UNIQUE_NAME]/default diff --git a/acceptance/bundle/resources/permissions/database_instances/current_can_manage/output.txt b/acceptance/bundle/resources/permissions/database_instances/current_can_manage/output.txt index e74d0c5b3b..cd6ed18a1c 100644 --- a/acceptance/bundle/resources/permissions/database_instances/current_can_manage/output.txt +++ b/acceptance/bundle/resources/permissions/database_instances/current_can_manage/output.txt @@ -61,7 +61,8 @@ Warning: unknown field: instance_profile_arn The following resources will be deleted: delete resources.database_instances.foo -The following resources may contain data that will be lost upon deletion: + +This action will result in the deletion or recreation of the following database instances. All data stored in them will be permanently lost: delete resources.database_instances.foo All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/test-bundle/default diff --git a/acceptance/bundle/resources/permissions/experiments/current_can_manage/output.txt b/acceptance/bundle/resources/permissions/experiments/current_can_manage/output.txt index 96fd31bfde..456c56ea69 100644 --- a/acceptance/bundle/resources/permissions/experiments/current_can_manage/output.txt +++ b/acceptance/bundle/resources/permissions/experiments/current_can_manage/output.txt @@ -29,7 +29,8 @@ Deployment complete! The following resources will be deleted: delete resources.experiments.foo -The following resources may contain data that will be lost upon deletion: + +This action will result in the deletion or recreation of the following MLflow experiments along with all their runs, metrics, and artifacts: delete resources.experiments.foo All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/test-bundle/default diff --git a/acceptance/bundle/resources/permissions/models/current_can_manage/output.txt b/acceptance/bundle/resources/permissions/models/current_can_manage/output.txt index a7739fd6cb..645815bc5c 100644 --- a/acceptance/bundle/resources/permissions/models/current_can_manage/output.txt +++ b/acceptance/bundle/resources/permissions/models/current_can_manage/output.txt @@ -23,7 +23,8 @@ The following resources will be deleted: delete resources.models.foo -The following resources may contain data that will be lost upon deletion: + +This action will result in the deletion or recreation of the following MLflow models along with all their versions and artifacts: delete resources.models.foo All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/test-bundle/default diff --git a/acceptance/bundle/resources/permissions/pipelines/current_can_manage/output.txt b/acceptance/bundle/resources/permissions/pipelines/current_can_manage/output.txt index ff492334ec..9ba2d33573 100644 --- a/acceptance/bundle/resources/permissions/pipelines/current_can_manage/output.txt +++ b/acceptance/bundle/resources/permissions/pipelines/current_can_manage/output.txt @@ -29,7 +29,8 @@ Deployment complete! The following resources will be deleted: delete resources.pipelines.foo -The following resources may contain data that will be lost upon deletion: + +This action will result in the deletion or recreation of the following Lakeflow Spark Declarative Pipelines along with the Streaming Tables (STs) and Materialized Views (MVs) managed by them: delete resources.pipelines.foo All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/test-bundle/default diff --git a/acceptance/bundle/resources/permissions/pipelines/current_is_owner/output.txt b/acceptance/bundle/resources/permissions/pipelines/current_is_owner/output.txt index acb849789c..b8eae437d5 100644 --- a/acceptance/bundle/resources/permissions/pipelines/current_is_owner/output.txt +++ b/acceptance/bundle/resources/permissions/pipelines/current_is_owner/output.txt @@ -17,7 +17,8 @@ Deployment complete! The following resources will be deleted: delete resources.pipelines.foo -The following resources may contain data that will be lost upon deletion: + +This action will result in the deletion or recreation of the following Lakeflow Spark Declarative Pipelines along with the Streaming Tables (STs) and Materialized Views (MVs) managed by them: delete resources.pipelines.foo All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/test-bundle/default diff --git a/acceptance/bundle/resources/permissions/pipelines/empty_list/output.txt b/acceptance/bundle/resources/permissions/pipelines/empty_list/output.txt index c1190cad3b..fafbfa5c57 100644 --- a/acceptance/bundle/resources/permissions/pipelines/empty_list/output.txt +++ b/acceptance/bundle/resources/permissions/pipelines/empty_list/output.txt @@ -12,7 +12,8 @@ Deployment complete! The following resources will be deleted: delete resources.pipelines.foo -The following resources may contain data that will be lost upon deletion: + +This action will result in the deletion or recreation of the following Lakeflow Spark Declarative Pipelines along with the Streaming Tables (STs) and Materialized Views (MVs) managed by them: delete resources.pipelines.foo All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/test-bundle/default diff --git a/acceptance/bundle/resources/permissions/pipelines/other_can_manage/output.txt b/acceptance/bundle/resources/permissions/pipelines/other_can_manage/output.txt index ff492334ec..9ba2d33573 100644 --- a/acceptance/bundle/resources/permissions/pipelines/other_can_manage/output.txt +++ b/acceptance/bundle/resources/permissions/pipelines/other_can_manage/output.txt @@ -29,7 +29,8 @@ Deployment complete! The following resources will be deleted: delete resources.pipelines.foo -The following resources may contain data that will be lost upon deletion: + +This action will result in the deletion or recreation of the following Lakeflow Spark Declarative Pipelines along with the Streaming Tables (STs) and Materialized Views (MVs) managed by them: delete resources.pipelines.foo All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/test-bundle/default diff --git a/acceptance/bundle/resources/permissions/pipelines/other_is_owner/output.txt b/acceptance/bundle/resources/permissions/pipelines/other_is_owner/output.txt index 11471a892e..3b8f46a688 100644 --- a/acceptance/bundle/resources/permissions/pipelines/other_is_owner/output.txt +++ b/acceptance/bundle/resources/permissions/pipelines/other_is_owner/output.txt @@ -21,7 +21,8 @@ Deployment complete! The following resources will be deleted: delete resources.pipelines.foo -The following resources may contain data that will be lost upon deletion: + +This action will result in the deletion or recreation of the following Lakeflow Spark Declarative Pipelines along with the Streaming Tables (STs) and Materialized Views (MVs) managed by them: delete resources.pipelines.foo All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/test-bundle/default diff --git a/acceptance/bundle/resources/permissions/postgres_projects/current_can_manage/output.txt b/acceptance/bundle/resources/permissions/postgres_projects/current_can_manage/output.txt index e2b435f3ed..6665fef06b 100644 --- a/acceptance/bundle/resources/permissions/postgres_projects/current_can_manage/output.txt +++ b/acceptance/bundle/resources/permissions/postgres_projects/current_can_manage/output.txt @@ -29,7 +29,8 @@ Deployment complete! The following resources will be deleted: delete resources.postgres_projects.foo -The following resources may contain data that will be lost upon deletion: + +This action will result in the deletion or recreation of the following Postgres projects along with all their branches, databases, and endpoints: delete resources.postgres_projects.foo All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/test-bundle/default diff --git a/acceptance/bundle/resources/pipelines/allow-duplicate-names/output.txt b/acceptance/bundle/resources/pipelines/allow-duplicate-names/output.txt index 351668ac9c..33822d6c90 100644 --- a/acceptance/bundle/resources/pipelines/allow-duplicate-names/output.txt +++ b/acceptance/bundle/resources/pipelines/allow-duplicate-names/output.txt @@ -46,7 +46,8 @@ Deployment complete! The following resources will be deleted: delete resources.pipelines.pipeline_one -The following resources may contain data that will be lost upon deletion: + +This action will result in the deletion or recreation of the following Lakeflow Spark Declarative Pipelines along with the Streaming Tables (STs) and Materialized Views (MVs) managed by them: delete resources.pipelines.pipeline_one All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/acc-bundle-deploy-pipeline-duplicate-names-[UNIQUE_NAME]/default diff --git a/acceptance/bundle/resources/pipelines/auto-approve/output.txt b/acceptance/bundle/resources/pipelines/auto-approve/output.txt index eae0f27c3e..0bda6ff689 100644 --- a/acceptance/bundle/resources/pipelines/auto-approve/output.txt +++ b/acceptance/bundle/resources/pipelines/auto-approve/output.txt @@ -45,8 +45,7 @@ Plan: 0 to add, 0 to change, 2 to delete, 0 unchanged >>> errcode [CLI] bundle deploy Uploading bundle files to /Workspace/Users/[USERNAME]/.bundle/[UNIQUE_NAME]/files... -This action will result in the deletion or recreation of the following resources. -Deleted or recreated resources may result in data loss or other irreversible consequences: +This action will result in the deletion or recreation of the following Lakeflow Spark Declarative Pipelines along with the Streaming Tables (STs) and Materialized Views (MVs) managed by them: delete resources.pipelines.bar Error: the deployment requires destructive actions, but current console does not support prompting. Please specify --auto-approve if you would like to skip prompts and proceed @@ -58,7 +57,8 @@ The following resources will be deleted: delete resources.jobs.foo delete resources.pipelines.bar -The following resources may contain data that will be lost upon deletion: + +This action will result in the deletion or recreation of the following Lakeflow Spark Declarative Pipelines along with the Streaming Tables (STs) and Materialized Views (MVs) managed by them: delete resources.pipelines.bar All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/[UNIQUE_NAME] diff --git a/acceptance/bundle/resources/pipelines/lakeflow-pipeline/output.txt b/acceptance/bundle/resources/pipelines/lakeflow-pipeline/output.txt index df6e3e735a..b12980c632 100644 --- a/acceptance/bundle/resources/pipelines/lakeflow-pipeline/output.txt +++ b/acceptance/bundle/resources/pipelines/lakeflow-pipeline/output.txt @@ -42,7 +42,8 @@ Deployment complete! The following resources will be deleted: delete resources.pipelines.foo -The following resources may contain data that will be lost upon deletion: + +This action will result in the deletion or recreation of the following Lakeflow Spark Declarative Pipelines along with the Streaming Tables (STs) and Materialized Views (MVs) managed by them: delete resources.pipelines.foo All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/test-pipeline-lakeflow-pipeline-[UNIQUE_NAME]/default diff --git a/acceptance/bundle/resources/pipelines/recreate-keys/change-ingestion-definition/output.txt b/acceptance/bundle/resources/pipelines/recreate-keys/change-ingestion-definition/output.txt index 538d081808..8a334544d2 100644 --- a/acceptance/bundle/resources/pipelines/recreate-keys/change-ingestion-definition/output.txt +++ b/acceptance/bundle/resources/pipelines/recreate-keys/change-ingestion-definition/output.txt @@ -63,8 +63,7 @@ Plan: 1 to add, 0 to change, 1 to delete, 0 unchanged >>> [CLI] bundle deploy --auto-approve Uploading bundle files to /Workspace/Users/[USERNAME]/.bundle/acc-[UNIQUE_NAME]/default/files... -This action will result in the deletion or recreation of the following resources. -Deleted or recreated resources may result in data loss or other irreversible consequences: +This action will result in the deletion or recreation of the following Lakeflow Spark Declarative Pipelines along with the Streaming Tables (STs) and Materialized Views (MVs) managed by them: recreate resources.pipelines.my Deploying resources... Updating deployment state... @@ -147,7 +146,8 @@ Error: The specified pipeline [MY_ID] was not found. The following resources will be deleted: delete resources.pipelines.my -The following resources may contain data that will be lost upon deletion: + +This action will result in the deletion or recreation of the following Lakeflow Spark Declarative Pipelines along with the Streaming Tables (STs) and Materialized Views (MVs) managed by them: delete resources.pipelines.my All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/acc-[UNIQUE_NAME]/default diff --git a/acceptance/bundle/resources/pipelines/recreate-keys/change-storage/output.txt b/acceptance/bundle/resources/pipelines/recreate-keys/change-storage/output.txt index 0b3eec0032..3bdc039eeb 100644 --- a/acceptance/bundle/resources/pipelines/recreate-keys/change-storage/output.txt +++ b/acceptance/bundle/resources/pipelines/recreate-keys/change-storage/output.txt @@ -58,8 +58,7 @@ Plan: 1 to add, 0 to change, 1 to delete, 0 unchanged >>> [CLI] bundle deploy --auto-approve Uploading bundle files to /Workspace/Users/[USERNAME]/.bundle/acc-[UNIQUE_NAME]/default/files... -This action will result in the deletion or recreation of the following resources. -Deleted or recreated resources may result in data loss or other irreversible consequences: +This action will result in the deletion or recreation of the following Lakeflow Spark Declarative Pipelines along with the Streaming Tables (STs) and Materialized Views (MVs) managed by them: recreate resources.pipelines.my Deploying resources... Updating deployment state... @@ -131,7 +130,8 @@ Error: The specified pipeline [MY_ID] was not found. The following resources will be deleted: delete resources.pipelines.my -The following resources may contain data that will be lost upon deletion: + +This action will result in the deletion or recreation of the following Lakeflow Spark Declarative Pipelines along with the Streaming Tables (STs) and Materialized Views (MVs) managed by them: delete resources.pipelines.my All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/acc-[UNIQUE_NAME]/default diff --git a/acceptance/bundle/resources/pipelines/recreate/output.txt b/acceptance/bundle/resources/pipelines/recreate/output.txt index a7cfa0524c..a1f1bb5ee9 100644 --- a/acceptance/bundle/resources/pipelines/recreate/output.txt +++ b/acceptance/bundle/resources/pipelines/recreate/output.txt @@ -44,8 +44,7 @@ Plan: 1 to add, 0 to change, 1 to delete, 1 unchanged >>> errcode [CLI] bundle deploy --force-lock Uploading bundle files to /Workspace/Users/[USERNAME]/.bundle/[UNIQUE_NAME]/files... -This action will result in the deletion or recreation of the following resources. -Deleted or recreated resources may result in data loss or other irreversible consequences: +This action will result in the deletion or recreation of the following Lakeflow Spark Declarative Pipelines along with the Streaming Tables (STs) and Materialized Views (MVs) managed by them: recreate resources.pipelines.foo Error: the deployment requires destructive actions, but current console does not support prompting. Please specify --auto-approve if you would like to skip prompts and proceed @@ -57,8 +56,11 @@ The following resources will be deleted: delete resources.pipelines.foo delete resources.schemas.bar -The following resources may contain data that will be lost upon deletion: + +This action will result in the deletion or recreation of the following Lakeflow Spark Declarative Pipelines along with the Streaming Tables (STs) and Materialized Views (MVs) managed by them: delete resources.pipelines.foo + +This action will result in the deletion or recreation of the following UC schemas along with all the tables and views they contain: delete resources.schemas.bar All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/[UNIQUE_NAME] diff --git a/acceptance/bundle/resources/pipelines/update/output.txt b/acceptance/bundle/resources/pipelines/update/output.txt index cd90704034..08961411b4 100644 --- a/acceptance/bundle/resources/pipelines/update/output.txt +++ b/acceptance/bundle/resources/pipelines/update/output.txt @@ -71,7 +71,8 @@ Deployment complete! The following resources will be deleted: delete resources.pipelines.my -The following resources may contain data that will be lost upon deletion: + +This action will result in the deletion or recreation of the following Lakeflow Spark Declarative Pipelines along with the Streaming Tables (STs) and Materialized Views (MVs) managed by them: delete resources.pipelines.my All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/acc-[UNIQUE_NAME]/default diff --git a/acceptance/bundle/resources/postgres_branches/basic/output.txt b/acceptance/bundle/resources/postgres_branches/basic/output.txt index 121539afbd..b678738431 100644 --- a/acceptance/bundle/resources/postgres_branches/basic/output.txt +++ b/acceptance/bundle/resources/postgres_branches/basic/output.txt @@ -69,8 +69,11 @@ The following resources will be deleted: delete resources.postgres_branches.main delete resources.postgres_projects.my_project -The following resources may contain data that will be lost upon deletion: + +This action will result in the deletion or recreation of the following Postgres branches along with all data they contain: delete resources.postgres_branches.main + +This action will result in the deletion or recreation of the following Postgres projects along with all their branches, databases, and endpoints: delete resources.postgres_projects.my_project All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/deploy-postgres-branch-[UNIQUE_NAME]/default diff --git a/acceptance/bundle/resources/postgres_branches/recreate/output.txt b/acceptance/bundle/resources/postgres_branches/recreate/output.txt index 85f5df1d30..66afc1f338 100644 --- a/acceptance/bundle/resources/postgres_branches/recreate/output.txt +++ b/acceptance/bundle/resources/postgres_branches/recreate/output.txt @@ -65,8 +65,7 @@ resources: >>> [CLI] bundle deploy --auto-approve Uploading bundle files to /Workspace/Users/[USERNAME]/.bundle/deploy-postgres-branch-recreate-[UNIQUE_NAME]/default/files... -This action will result in the deletion or recreation of the following resources. -Deleted or recreated resources may result in data loss or other irreversible consequences: +This action will result in the deletion or recreation of the following Postgres branches along with all data they contain: recreate resources.postgres_branches.main Deploying resources... Updating deployment state... @@ -79,8 +78,11 @@ The following resources will be deleted: delete resources.postgres_branches.main delete resources.postgres_projects.my_project -The following resources may contain data that will be lost upon deletion: + +This action will result in the deletion or recreation of the following Postgres branches along with all data they contain: delete resources.postgres_branches.main + +This action will result in the deletion or recreation of the following Postgres projects along with all their branches, databases, and endpoints: delete resources.postgres_projects.my_project All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/deploy-postgres-branch-recreate-[UNIQUE_NAME]/default diff --git a/acceptance/bundle/resources/postgres_branches/update_protected/output.txt b/acceptance/bundle/resources/postgres_branches/update_protected/output.txt index 862a0c3633..fb722eb435 100644 --- a/acceptance/bundle/resources/postgres_branches/update_protected/output.txt +++ b/acceptance/bundle/resources/postgres_branches/update_protected/output.txt @@ -154,8 +154,11 @@ The following resources will be deleted: delete resources.postgres_branches.dev_branch delete resources.postgres_projects.my_project -The following resources may contain data that will be lost upon deletion: + +This action will result in the deletion or recreation of the following Postgres branches along with all data they contain: delete resources.postgres_branches.dev_branch + +This action will result in the deletion or recreation of the following Postgres projects along with all their branches, databases, and endpoints: delete resources.postgres_projects.my_project All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/update-postgres-branch-[UNIQUE_NAME]/default diff --git a/acceptance/bundle/resources/postgres_endpoints/basic/output.txt b/acceptance/bundle/resources/postgres_endpoints/basic/output.txt index 287f5711ba..0f3c8d16cf 100644 --- a/acceptance/bundle/resources/postgres_endpoints/basic/output.txt +++ b/acceptance/bundle/resources/postgres_endpoints/basic/output.txt @@ -87,8 +87,11 @@ The following resources will be deleted: delete resources.postgres_endpoints.custom delete resources.postgres_projects.my_project -The following resources may contain data that will be lost upon deletion: + +This action will result in the deletion or recreation of the following Postgres branches along with all data they contain: delete resources.postgres_branches.main + +This action will result in the deletion or recreation of the following Postgres projects along with all their branches, databases, and endpoints: delete resources.postgres_projects.my_project All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/deploy-postgres-endpoint-[UNIQUE_NAME]/default diff --git a/acceptance/bundle/resources/postgres_endpoints/recreate/output.txt b/acceptance/bundle/resources/postgres_endpoints/recreate/output.txt index b07ff0c323..296ea07a29 100644 --- a/acceptance/bundle/resources/postgres_endpoints/recreate/output.txt +++ b/acceptance/bundle/resources/postgres_endpoints/recreate/output.txt @@ -147,8 +147,11 @@ The following resources will be deleted: delete resources.postgres_endpoints.my_endpoint delete resources.postgres_projects.my_project -The following resources may contain data that will be lost upon deletion: + +This action will result in the deletion or recreation of the following Postgres branches along with all data they contain: delete resources.postgres_branches.main + +This action will result in the deletion or recreation of the following Postgres projects along with all their branches, databases, and endpoints: delete resources.postgres_projects.my_project All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/deploy-postgres-endpoint-recreate-[UNIQUE_NAME]/default diff --git a/acceptance/bundle/resources/postgres_endpoints/update_autoscaling/output.txt b/acceptance/bundle/resources/postgres_endpoints/update_autoscaling/output.txt index 381f1f82ce..6049c2fa7f 100644 --- a/acceptance/bundle/resources/postgres_endpoints/update_autoscaling/output.txt +++ b/acceptance/bundle/resources/postgres_endpoints/update_autoscaling/output.txt @@ -187,8 +187,11 @@ The following resources will be deleted: delete resources.postgres_endpoints.my_endpoint delete resources.postgres_projects.my_project -The following resources may contain data that will be lost upon deletion: + +This action will result in the deletion or recreation of the following Postgres branches along with all data they contain: delete resources.postgres_branches.main + +This action will result in the deletion or recreation of the following Postgres projects along with all their branches, databases, and endpoints: delete resources.postgres_projects.my_project All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/update-postgres-endpoint-[UNIQUE_NAME]/default diff --git a/acceptance/bundle/resources/postgres_projects/basic/output.txt b/acceptance/bundle/resources/postgres_projects/basic/output.txt index 0b0fe455ef..d7768c7177 100644 --- a/acceptance/bundle/resources/postgres_projects/basic/output.txt +++ b/acceptance/bundle/resources/postgres_projects/basic/output.txt @@ -64,7 +64,8 @@ Resources: The following resources will be deleted: delete resources.postgres_projects.my_project -The following resources may contain data that will be lost upon deletion: + +This action will result in the deletion or recreation of the following Postgres projects along with all their branches, databases, and endpoints: delete resources.postgres_projects.my_project All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/deploy-postgres-single-project-[UNIQUE_NAME]/default diff --git a/acceptance/bundle/resources/postgres_projects/recreate/output.txt b/acceptance/bundle/resources/postgres_projects/recreate/output.txt index b9f84e7e89..05b03fe5f0 100644 --- a/acceptance/bundle/resources/postgres_projects/recreate/output.txt +++ b/acceptance/bundle/resources/postgres_projects/recreate/output.txt @@ -52,8 +52,7 @@ resources: >>> [CLI] bundle deploy --auto-approve Uploading bundle files to /Workspace/Users/[USERNAME]/.bundle/deploy-postgres-recreate-[UNIQUE_NAME]/default/files... -This action will result in the deletion or recreation of the following resources. -Deleted or recreated resources may result in data loss or other irreversible consequences: +This action will result in the deletion or recreation of the following Postgres projects along with all their branches, databases, and endpoints: recreate resources.postgres_projects.my_project Deploying resources... Updating deployment state... @@ -65,7 +64,8 @@ Deployment complete! The following resources will be deleted: delete resources.postgres_projects.my_project -The following resources may contain data that will be lost upon deletion: + +This action will result in the deletion or recreation of the following Postgres projects along with all their branches, databases, and endpoints: delete resources.postgres_projects.my_project All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/deploy-postgres-recreate-[UNIQUE_NAME]/default diff --git a/acceptance/bundle/resources/postgres_projects/update_display_name/output.txt b/acceptance/bundle/resources/postgres_projects/update_display_name/output.txt index 9d45d073fb..c569675c08 100644 --- a/acceptance/bundle/resources/postgres_projects/update_display_name/output.txt +++ b/acceptance/bundle/resources/postgres_projects/update_display_name/output.txt @@ -157,7 +157,8 @@ Deployment complete! The following resources will be deleted: delete resources.postgres_projects.my_project -The following resources may contain data that will be lost upon deletion: + +This action will result in the deletion or recreation of the following Postgres projects along with all their branches, databases, and endpoints: delete resources.postgres_projects.my_project All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/update-postgres-project-[UNIQUE_NAME]/default diff --git a/acceptance/bundle/resources/quality_monitors/change_assets_dir/out.deploy.direct.txt b/acceptance/bundle/resources/quality_monitors/change_assets_dir/out.deploy.direct.txt index 4634921c28..33601b8b6d 100644 --- a/acceptance/bundle/resources/quality_monitors/change_assets_dir/out.deploy.direct.txt +++ b/acceptance/bundle/resources/quality_monitors/change_assets_dir/out.deploy.direct.txt @@ -2,8 +2,7 @@ >>> errcode [CLI] bundle deploy --auto-approve Uploading bundle files to /Workspace/Users/[USERNAME]/.bundle/quality-monitor-update-[UNIQUE_NAME]/default/files... -This action will result in the deletion or recreation of the following resources. -Deleted or recreated resources may result in data loss or other irreversible consequences: +This action will result in the deletion or recreation of the following quality monitors. Associated metric tables may be lost or orphaned: recreate resources.quality_monitors.monitor1 Deploying resources... Updating deployment state... diff --git a/acceptance/bundle/resources/quality_monitors/change_assets_dir/output.txt b/acceptance/bundle/resources/quality_monitors/change_assets_dir/output.txt index 4283332812..4d9e6e471d 100644 --- a/acceptance/bundle/resources/quality_monitors/change_assets_dir/output.txt +++ b/acceptance/bundle/resources/quality_monitors/change_assets_dir/output.txt @@ -29,7 +29,8 @@ Plan: 0 to add, 0 to change, 0 to delete, 1 unchanged The following resources will be deleted: delete resources.quality_monitors.monitor1 -The following resources may contain data that will be lost upon deletion: + +This action will result in the deletion or recreation of the following quality monitors. Associated metric tables may be lost or orphaned: delete resources.quality_monitors.monitor1 All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/quality-monitor-update-[UNIQUE_NAME]/default diff --git a/acceptance/bundle/resources/quality_monitors/change_output_schema_name/output.txt b/acceptance/bundle/resources/quality_monitors/change_output_schema_name/output.txt index 5fe0141937..dfd6622c0f 100644 --- a/acceptance/bundle/resources/quality_monitors/change_output_schema_name/output.txt +++ b/acceptance/bundle/resources/quality_monitors/change_output_schema_name/output.txt @@ -45,7 +45,8 @@ Plan: 0 to add, 0 to change, 0 to delete, 1 unchanged The following resources will be deleted: delete resources.quality_monitors.monitor1 -The following resources may contain data that will be lost upon deletion: + +This action will result in the deletion or recreation of the following quality monitors. Associated metric tables may be lost or orphaned: delete resources.quality_monitors.monitor1 All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/quality-monitor-update-[UNIQUE_NAME]/default diff --git a/acceptance/bundle/resources/quality_monitors/change_table_name/out.deploy.direct.txt b/acceptance/bundle/resources/quality_monitors/change_table_name/out.deploy.direct.txt index 4634921c28..33601b8b6d 100644 --- a/acceptance/bundle/resources/quality_monitors/change_table_name/out.deploy.direct.txt +++ b/acceptance/bundle/resources/quality_monitors/change_table_name/out.deploy.direct.txt @@ -2,8 +2,7 @@ >>> errcode [CLI] bundle deploy --auto-approve Uploading bundle files to /Workspace/Users/[USERNAME]/.bundle/quality-monitor-update-[UNIQUE_NAME]/default/files... -This action will result in the deletion or recreation of the following resources. -Deleted or recreated resources may result in data loss or other irreversible consequences: +This action will result in the deletion or recreation of the following quality monitors. Associated metric tables may be lost or orphaned: recreate resources.quality_monitors.monitor1 Deploying resources... Updating deployment state... diff --git a/acceptance/bundle/resources/quality_monitors/change_table_name/output.txt b/acceptance/bundle/resources/quality_monitors/change_table_name/output.txt index e2d30f3064..9484f06e52 100644 --- a/acceptance/bundle/resources/quality_monitors/change_table_name/output.txt +++ b/acceptance/bundle/resources/quality_monitors/change_table_name/output.txt @@ -29,7 +29,8 @@ Plan: 0 to add, 0 to change, 0 to delete, 1 unchanged The following resources will be deleted: delete resources.quality_monitors.monitor1 -The following resources may contain data that will be lost upon deletion: + +This action will result in the deletion or recreation of the following quality monitors. Associated metric tables may be lost or orphaned: delete resources.quality_monitors.monitor1 All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/quality-monitor-update-[UNIQUE_NAME]/default diff --git a/acceptance/bundle/resources/quality_monitors/create/output.txt b/acceptance/bundle/resources/quality_monitors/create/output.txt index c3fb558638..6cd5f95c77 100644 --- a/acceptance/bundle/resources/quality_monitors/create/output.txt +++ b/acceptance/bundle/resources/quality_monitors/create/output.txt @@ -24,7 +24,8 @@ Table main.qm_test_[UNIQUE_NAME].test_table is now visible (catalog_name=main) The following resources will be deleted: delete resources.quality_monitors.monitor1 -The following resources may contain data that will be lost upon deletion: + +This action will result in the deletion or recreation of the following quality monitors. Associated metric tables may be lost or orphaned: delete resources.quality_monitors.monitor1 All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/quality-monitor-update-[UNIQUE_NAME]/default diff --git a/acceptance/bundle/resources/registered_models/basic/output.txt b/acceptance/bundle/resources/registered_models/basic/output.txt index 8ce44cf089..0e159faabe 100644 --- a/acceptance/bundle/resources/registered_models/basic/output.txt +++ b/acceptance/bundle/resources/registered_models/basic/output.txt @@ -67,8 +67,7 @@ Plan: 1 to add, 0 to change, 1 to delete, 0 unchanged >>> [CLI] bundle deploy --auto-approve Uploading bundle files to /Workspace/Users/[USERNAME]/.bundle/deploy-registered-models-basic-[UNIQUE_NAME]/default/files... -This action will result in the deletion or recreation of the following resources. -Deleted or recreated resources may result in data loss or other irreversible consequences: +This action will result in the deletion or recreation of the following registered models along with all their versions: recreate resources.registered_models.my_registered_model Deploying resources... Updating deployment state... @@ -91,8 +90,7 @@ Plan: 1 to add, 0 to change, 1 to delete, 0 unchanged >>> [CLI] bundle deploy --auto-approve Uploading bundle files to /Workspace/Users/[USERNAME]/.bundle/deploy-registered-models-basic-[UNIQUE_NAME]/default/files... -This action will result in the deletion or recreation of the following resources. -Deleted or recreated resources may result in data loss or other irreversible consequences: +This action will result in the deletion or recreation of the following registered models along with all their versions: recreate resources.registered_models.my_registered_model Deploying resources... Updating deployment state... @@ -115,8 +113,7 @@ Plan: 1 to add, 0 to change, 1 to delete, 0 unchanged >>> [CLI] bundle deploy --auto-approve Uploading bundle files to /Workspace/Users/[USERNAME]/.bundle/deploy-registered-models-basic-[UNIQUE_NAME]/default/files... -This action will result in the deletion or recreation of the following resources. -Deleted or recreated resources may result in data loss or other irreversible consequences: +This action will result in the deletion or recreation of the following registered models along with all their versions: recreate resources.registered_models.my_registered_model Deploying resources... Updating deployment state... @@ -134,7 +131,8 @@ Deployment complete! The following resources will be deleted: delete resources.registered_models.my_registered_model -The following resources may contain data that will be lost upon deletion: + +This action will result in the deletion or recreation of the following registered models along with all their versions: delete resources.registered_models.my_registered_model All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/deploy-registered-models-basic-[UNIQUE_NAME]/default diff --git a/acceptance/bundle/resources/schemas/auto-approve/output.txt b/acceptance/bundle/resources/schemas/auto-approve/output.txt index 937b43c816..3062388892 100644 --- a/acceptance/bundle/resources/schemas/auto-approve/output.txt +++ b/acceptance/bundle/resources/schemas/auto-approve/output.txt @@ -55,8 +55,7 @@ test-file-[UNIQUE_NAME].txt -> dbfs:/Volumes/main/test-schema-[UNIQUE_NAME]/test >>> [CLI] bundle deploy Uploading bundle files to /Workspace/Users/[USERNAME]/.bundle/[UNIQUE_NAME]/files... -This action will result in the deletion or recreation of the following resources. -Deleted or recreated resources may result in data loss or other irreversible consequences: +This action will result in the deletion or recreation of the following UC schemas along with all the tables and views they contain: delete resources.schemas.bar Error: the deployment requires destructive actions, but current console does not support prompting. Please specify --auto-approve if you would like to skip prompts and proceed @@ -67,8 +66,11 @@ The following resources will be deleted: delete resources.pipelines.foo delete resources.schemas.bar -The following resources may contain data that will be lost upon deletion: + +This action will result in the deletion or recreation of the following Lakeflow Spark Declarative Pipelines along with the Streaming Tables (STs) and Materialized Views (MVs) managed by them: delete resources.pipelines.foo + +This action will result in the deletion or recreation of the following UC schemas along with all the tables and views they contain: delete resources.schemas.bar All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/[UNIQUE_NAME] diff --git a/acceptance/bundle/resources/schemas/recreate/output.txt b/acceptance/bundle/resources/schemas/recreate/output.txt index 6076c72b54..75d80242a2 100644 --- a/acceptance/bundle/resources/schemas/recreate/output.txt +++ b/acceptance/bundle/resources/schemas/recreate/output.txt @@ -38,8 +38,7 @@ Plan: 1 to add, 0 to change, 1 to delete, 0 unchanged >>> [CLI] bundle deploy --auto-approve Uploading bundle files to /Workspace/Users/[USERNAME]/.bundle/test-bundle/default/files... -This action will result in the deletion or recreation of the following resources. -Deleted or recreated resources may result in data loss or other irreversible consequences: +This action will result in the deletion or recreation of the following UC schemas along with all the tables and views they contain: recreate resources.schemas.schema1 Deploying resources... Updating deployment state... diff --git a/acceptance/bundle/resources/secret_scopes/basic/output.txt b/acceptance/bundle/resources/secret_scopes/basic/output.txt index 87287ed19d..07eeaf8a62 100644 --- a/acceptance/bundle/resources/secret_scopes/basic/output.txt +++ b/acceptance/bundle/resources/secret_scopes/basic/output.txt @@ -61,8 +61,7 @@ Deployment complete! >>> [CLI] bundle deploy --auto-approve Uploading bundle files to /Workspace/Users/[USERNAME]/.bundle/secret-scope-basic-[UNIQUE_NAME]/default/files... -This action will result in the deletion or recreation of the following resources. -Deleted or recreated resources may result in data loss or other irreversible consequences: +This action will result in the deletion or recreation of the following secret scopes. All secrets stored in them will be permanently lost: recreate resources.secret_scopes.my_scope Deploying resources... Updating deployment state... @@ -107,7 +106,8 @@ Deployment complete! The following resources will be deleted: delete resources.secret_scopes.my_scope -The following resources may contain data that will be lost upon deletion: + +This action will result in the deletion or recreation of the following secret scopes. All secrets stored in them will be permanently lost: delete resources.secret_scopes.my_scope All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/secret-scope-basic-[UNIQUE_NAME]/default diff --git a/acceptance/bundle/resources/secret_scopes/delete_scope/output.txt b/acceptance/bundle/resources/secret_scopes/delete_scope/output.txt index 0fc9a92605..9563af2c4f 100644 --- a/acceptance/bundle/resources/secret_scopes/delete_scope/output.txt +++ b/acceptance/bundle/resources/secret_scopes/delete_scope/output.txt @@ -9,8 +9,7 @@ Deployment complete! >>> [CLI] bundle deploy --auto-approve Uploading bundle files to /Workspace/Users/[USERNAME]/.bundle/secret-scope-basic-[UNIQUE_NAME]/default/files... -This action will result in the deletion or recreation of the following resources. -Deleted or recreated resources may result in data loss or other irreversible consequences: +This action will result in the deletion or recreation of the following secret scopes. All secrets stored in them will be permanently lost: delete resources.secret_scopes.second Deploying resources... Updating deployment state... @@ -20,7 +19,8 @@ Deployment complete! The following resources will be deleted: delete resources.secret_scopes.first -The following resources may contain data that will be lost upon deletion: + +This action will result in the deletion or recreation of the following secret scopes. All secrets stored in them will be permanently lost: delete resources.secret_scopes.first All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/secret-scope-basic-[UNIQUE_NAME]/default diff --git a/acceptance/bundle/resources/secret_scopes/permissions-collapse/output.txt b/acceptance/bundle/resources/secret_scopes/permissions-collapse/output.txt index 413173d8c9..87e4a16b15 100644 --- a/acceptance/bundle/resources/secret_scopes/permissions-collapse/output.txt +++ b/acceptance/bundle/resources/secret_scopes/permissions-collapse/output.txt @@ -24,7 +24,8 @@ Deployment complete! The following resources will be deleted: delete resources.secret_scopes.my_scope -The following resources may contain data that will be lost upon deletion: + +This action will result in the deletion or recreation of the following secret scopes. All secrets stored in them will be permanently lost: delete resources.secret_scopes.my_scope All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/secret-scope-collapse-[UNIQUE_NAME]/default diff --git a/acceptance/bundle/resources/secret_scopes/permissions/output.txt b/acceptance/bundle/resources/secret_scopes/permissions/output.txt index c55c556c68..1cdbf17ba3 100644 --- a/acceptance/bundle/resources/secret_scopes/permissions/output.txt +++ b/acceptance/bundle/resources/secret_scopes/permissions/output.txt @@ -43,8 +43,7 @@ Deployment complete! >>> [CLI] bundle deploy --auto-approve Uploading bundle files to /Workspace/Users/[USERNAME]/.bundle/secret-scope-permissions-[UNIQUE_NAME]/default/files... -This action will result in the deletion or recreation of the following resources. -Deleted or recreated resources may result in data loss or other irreversible consequences: +This action will result in the deletion or recreation of the following secret scopes. All secrets stored in them will be permanently lost: recreate resources.secret_scopes.my_scope Deploying resources... Updating deployment state... @@ -65,7 +64,8 @@ Deployment complete! The following resources will be deleted: delete resources.secret_scopes.my_scope -The following resources may contain data that will be lost upon deletion: + +This action will result in the deletion or recreation of the following secret scopes. All secrets stored in them will be permanently lost: delete resources.secret_scopes.my_scope All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/secret-scope-permissions-[UNIQUE_NAME]/default diff --git a/acceptance/bundle/resources/synced_database_tables/basic/output.txt b/acceptance/bundle/resources/synced_database_tables/basic/output.txt index 62b8173a0d..00f77145e1 100644 --- a/acceptance/bundle/resources/synced_database_tables/basic/output.txt +++ b/acceptance/bundle/resources/synced_database_tables/basic/output.txt @@ -50,8 +50,11 @@ The following resources will be deleted: delete resources.database_instances.my_instance delete resources.synced_database_tables.my_synced_table -The following resources may contain data that will be lost upon deletion: + +This action will result in the deletion or recreation of the following database catalogs. All data stored in them will be permanently lost: delete resources.database_catalogs.my_catalog + +This action will result in the deletion or recreation of the following database instances. All data stored in them will be permanently lost: delete resources.database_instances.my_instance All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/deploy-lakebase-synced-table-[UNIQUE_NAME]/default diff --git a/acceptance/bundle/resources/volumes/change-comment/output.txt b/acceptance/bundle/resources/volumes/change-comment/output.txt index 885c25c04b..b716e74a8f 100644 --- a/acceptance/bundle/resources/volumes/change-comment/output.txt +++ b/acceptance/bundle/resources/volumes/change-comment/output.txt @@ -91,7 +91,8 @@ Deployment complete! The following resources will be deleted: delete resources.volumes.volume1 -The following resources may contain data that will be lost upon deletion: + +This action will result in the deletion or recreation of the following volumes. For managed volumes, the files stored in the volume are also deleted from your cloud tenant within 30 days. For external volumes, the metadata about the volume is removed from the catalog, but the underlying files are not deleted: delete resources.volumes.volume1 All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/test-bundle/default diff --git a/acceptance/bundle/resources/volumes/change-schema-name/output.txt b/acceptance/bundle/resources/volumes/change-schema-name/output.txt index ed654b8b5e..060a9ee92a 100644 --- a/acceptance/bundle/resources/volumes/change-schema-name/output.txt +++ b/acceptance/bundle/resources/volumes/change-schema-name/output.txt @@ -44,8 +44,7 @@ Plan: 1 to add, 0 to change, 1 to delete, 0 unchanged >>> [CLI] bundle deploy --auto-approve Uploading bundle files to /Workspace/Users/[USERNAME]/.bundle/test-bundle/default/files... -This action will result in the deletion or recreation of the following resources. -Deleted or recreated resources may result in data loss or other irreversible consequences: +This action will result in the deletion or recreation of the following volumes. For managed volumes, the files stored in the volume are also deleted from your cloud tenant within 30 days. For external volumes, the metadata about the volume is removed from the catalog, but the underlying files are not deleted: recreate resources.volumes.volume1 Deploying resources... Updating deployment state... diff --git a/acceptance/bundle/resources/volumes/set-storage-location/output.txt b/acceptance/bundle/resources/volumes/set-storage-location/output.txt index 57a977023d..c7a68e9f69 100644 --- a/acceptance/bundle/resources/volumes/set-storage-location/output.txt +++ b/acceptance/bundle/resources/volumes/set-storage-location/output.txt @@ -33,7 +33,8 @@ Plan: 2 to add, 0 to change, 0 to delete, 0 unchanged The following resources will be deleted: delete resources.schemas.myschema -The following resources may contain data that will be lost upon deletion: + +This action will result in the deletion or recreation of the following UC schemas along with all the tables and views they contain: delete resources.schemas.myschema All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/testbundle-[UNIQUE_NAME]/default diff --git a/acceptance/bundle/state/state_present/output.txt b/acceptance/bundle/state/state_present/output.txt index 593df19fee..e56c86b16f 100644 --- a/acceptance/bundle/state/state_present/output.txt +++ b/acceptance/bundle/state/state_present/output.txt @@ -51,7 +51,8 @@ Deployment complete! The following resources will be deleted: delete resources.schemas.foo -The following resources may contain data that will be lost upon deletion: + +This action will result in the deletion or recreation of the following UC schemas along with all the tables and views they contain: delete resources.schemas.foo All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/test-bundle/default diff --git a/acceptance/bundle/summary/modified_status/output.txt b/acceptance/bundle/summary/modified_status/output.txt index e1057b0751..7d92dd8259 100644 --- a/acceptance/bundle/summary/modified_status/output.txt +++ b/acceptance/bundle/summary/modified_status/output.txt @@ -185,9 +185,14 @@ The following resources will be deleted: delete resources.schemas.my_schema delete resources.sql_warehouses.my_sql_warehouse -The following resources may contain data that will be lost upon deletion: + +This action will result in the deletion or recreation of the following alerts. Evaluation and notification history will be permanently lost: delete resources.alerts.my_alert + +This action will result in the deletion or recreation of the following Lakeflow Spark Declarative Pipelines along with the Streaming Tables (STs) and Materialized Views (MVs) managed by them: delete resources.pipelines.my_pipeline + +This action will result in the deletion or recreation of the following UC schemas along with all the tables and views they contain: delete resources.schemas.my_schema All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/test-bundle/default diff --git a/acceptance/bundle/templates/default-python/integration_classic/output.txt b/acceptance/bundle/templates/default-python/integration_classic/output.txt index d9afd51159..0a83e4fe4c 100644 --- a/acceptance/bundle/templates/default-python/integration_classic/output.txt +++ b/acceptance/bundle/templates/default-python/integration_classic/output.txt @@ -92,7 +92,8 @@ The following resources will be deleted: delete resources.jobs.sample_job delete resources.pipelines.project_name_[UNIQUE_NAME]_etl -The following resources may contain data that will be lost upon deletion: + +This action will result in the deletion or recreation of the following Lakeflow Spark Declarative Pipelines along with the Streaming Tables (STs) and Materialized Views (MVs) managed by them: delete resources.pipelines.project_name_[UNIQUE_NAME]_etl All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/project_name_[UNIQUE_NAME]/dev @@ -489,7 +490,8 @@ The following resources will be deleted: delete resources.jobs.sample_job delete resources.pipelines.project_name_[UNIQUE_NAME]_etl -The following resources may contain data that will be lost upon deletion: + +This action will result in the deletion or recreation of the following Lakeflow Spark Declarative Pipelines along with the Streaming Tables (STs) and Materialized Views (MVs) managed by them: delete resources.pipelines.project_name_[UNIQUE_NAME]_etl All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/project_name_[UNIQUE_NAME]/prod diff --git a/acceptance/bundle/user_agent/simple/output.txt b/acceptance/bundle/user_agent/simple/output.txt index d11510cf1b..0958d44524 100644 --- a/acceptance/bundle/user_agent/simple/output.txt +++ b/acceptance/bundle/user_agent/simple/output.txt @@ -53,7 +53,8 @@ Error: resource with key "foo" not found The following resources will be deleted: delete resources.schemas.foo -The following resources may contain data that will be lost upon deletion: + +This action will result in the deletion or recreation of the following UC schemas along with all the tables and views they contain: delete resources.schemas.foo All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/test-bundle/default diff --git a/acceptance/pipelines/deploy/auto-approve/output.txt b/acceptance/pipelines/deploy/auto-approve/output.txt index 72ee4c54d0..e03dfe518e 100644 --- a/acceptance/pipelines/deploy/auto-approve/output.txt +++ b/acceptance/pipelines/deploy/auto-approve/output.txt @@ -13,8 +13,7 @@ View your pipeline foo here: [DATABRICKS_URL]/pipelines/[UUID]?o=[NUMID] >>> errcode [CLI] pipelines deploy Uploading bundle files to /Workspace/Users/[USERNAME]/.bundle/test-pipeline-auto-approve/default/files... -This action will result in the deletion or recreation of the following resources. -Deleted or recreated resources may result in data loss or other irreversible consequences: +This action will result in the deletion or recreation of the following Lakeflow Spark Declarative Pipelines along with the Streaming Tables (STs) and Materialized Views (MVs) managed by them: delete resources.pipelines.foo Error: the deployment requires destructive actions, but current console does not support prompting. Please specify --auto-approve if you would like to skip prompts and proceed @@ -25,8 +24,7 @@ Exit code: 1 >>> [CLI] pipelines deploy --auto-approve Uploading bundle files to /Workspace/Users/[USERNAME]/.bundle/test-pipeline-auto-approve/default/files... -This action will result in the deletion or recreation of the following resources. -Deleted or recreated resources may result in data loss or other irreversible consequences: +This action will result in the deletion or recreation of the following Lakeflow Spark Declarative Pipelines along with the Streaming Tables (STs) and Materialized Views (MVs) managed by them: delete resources.pipelines.foo Deploying resources... Updating deployment state... diff --git a/acceptance/pipelines/destroy/auto-approve/output.txt b/acceptance/pipelines/destroy/auto-approve/output.txt index 80236e9289..6e533f52f3 100644 --- a/acceptance/pipelines/destroy/auto-approve/output.txt +++ b/acceptance/pipelines/destroy/auto-approve/output.txt @@ -16,7 +16,8 @@ Exit code: 1 The following resources will be deleted: delete resources.pipelines.my_pipeline -The following resources may contain data that will be lost upon deletion: + +This action will result in the deletion or recreation of the following Lakeflow Spark Declarative Pipelines along with the Streaming Tables (STs) and Materialized Views (MVs) managed by them: delete resources.pipelines.my_pipeline All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/test-pipeline-destroy/default diff --git a/acceptance/pipelines/destroy/destroy-pipeline/output.txt b/acceptance/pipelines/destroy/destroy-pipeline/output.txt index 2ea78d771a..8e6558def4 100644 --- a/acceptance/pipelines/destroy/destroy-pipeline/output.txt +++ b/acceptance/pipelines/destroy/destroy-pipeline/output.txt @@ -11,7 +11,8 @@ View your pipeline my_pipeline here: [DATABRICKS_URL]/pipelines/[UUID]?o=[NUMID] The following resources will be deleted: delete resources.pipelines.my_pipeline -The following resources may contain data that will be lost upon deletion: + +This action will result in the deletion or recreation of the following Lakeflow Spark Declarative Pipelines along with the Streaming Tables (STs) and Materialized Views (MVs) managed by them: delete resources.pipelines.my_pipeline All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/test-pipeline-destroy/default diff --git a/acceptance/pipelines/destroy/force-lock/output.txt b/acceptance/pipelines/destroy/force-lock/output.txt index 385100ac30..e3d4d3f645 100644 --- a/acceptance/pipelines/destroy/force-lock/output.txt +++ b/acceptance/pipelines/destroy/force-lock/output.txt @@ -22,7 +22,8 @@ Exit code: 1 The following resources will be deleted: delete resources.pipelines.foo -The following resources may contain data that will be lost upon deletion: + +This action will result in the deletion or recreation of the following Lakeflow Spark Declarative Pipelines along with the Streaming Tables (STs) and Materialized Views (MVs) managed by them: delete resources.pipelines.foo All files and directories at the following location will be deleted: /Workspace/Users/[USERNAME]/.bundle/test-pipeline-force-lock/default diff --git a/acceptance/pipelines/e2e/output.txt b/acceptance/pipelines/e2e/output.txt index cf12a895a2..5bcfe0c7cd 100644 --- a/acceptance/pipelines/e2e/output.txt +++ b/acceptance/pipelines/e2e/output.txt @@ -105,7 +105,8 @@ The following resources will be deleted: delete resources.pipelines.lakeflow_project_etl delete resources.pipelines.lakeflow_project_etl_2 -The following resources may contain data that will be lost upon deletion: + +This action will result in the deletion or recreation of the following Lakeflow Spark Declarative Pipelines along with the Streaming Tables (STs) and Materialized Views (MVs) managed by them: delete resources.pipelines.lakeflow_project_etl delete resources.pipelines.lakeflow_project_etl_2 diff --git a/bundle/phases/deploy.go b/bundle/phases/deploy.go index e3d9d8ee7f..8594c6f744 100644 --- a/bundle/phases/deploy.go +++ b/bundle/phases/deploy.go @@ -27,59 +27,15 @@ import ( "github.com/databricks/cli/libs/sync" ) -// resourcesSafeToDestroy lists resource types that can be safely deleted or -// recreated without a confirmation prompt. All other resource types require -// approval because their deletion may cause non-recoverable data loss. -// -// Rubric: a resource is safe if it holds only ephemeral state or configuration -// that is fully recoverable by redeploying the bundle. -// -// Resources NOT on this list (and thus requiring a warning): -// - schemas: contains tables, views, functions; force-delete cascades to all data. -// - volumes: managed volumes have files deleted from cloud within 30 days. -// - pipelines: deletion currently cascades to managed Streaming Tables and Materialized Views. -// - dashboards: non-reproducible URL/ID; UI-developed content may not be in bundle config. -// - catalogs: top-level UC container; force-delete cascades to all schemas/tables/data. -// - secret_scopes: secrets are added out-of-band and destroyed on scope deletion. -// - database_instances: purge deletes all Postgres data permanently. -// - database_catalogs: destroys associated Postgres database and all tables/data. -// - postgres_projects: cascades to delete all branches, databases, and endpoints. -// - postgres_branches: contains forked database data that is permanently lost. -// - models: deletion cascades to all model versions and artifacts. -// - registered_models: deletion cascades to all UC model versions. -// - experiments: runs, metrics, parameters, and artifacts are lost. -// - quality_monitors: drift/profile metrics tables may be lost or orphaned. -// - alerts: purge permanently destroys evaluation and notification history. -// -// isActionSafeToDestroy checks if an action targets a resource type that is -// safe to destroy. For child resources (e.g. permissions, grants), the safety -// is determined by the parent resource type. -func isActionSafeToDestroy(action deployplan.Action) bool { +// resourceDestroyWarning returns the warning message for a given resource type, +// or an empty string if the resource is safe to delete/recreate. +// For child resources (e.g. permissions, grants), the parent type is used. +func resourceDestroyWarning(action deployplan.Action) string { resourceType := config.GetResourceTypeFromKey(action.ResourceKey) - // Child resources like "jobs.permissions" inherit safety from parent type. if base, _, ok := strings.Cut(resourceType, "."); ok { - return resourcesSafeToDestroy[base] + resourceType = base } - return resourcesSafeToDestroy[resourceType] -} - -var resourcesSafeToDestroy = map[string]bool{ - // Jobs: run history persists independently of the job definition. - "jobs": true, - // Model serving endpoints: stateless config; inference tables live in UC independently. - "model_serving_endpoints": true, - // Clusters: pure ephemeral compute; all config is in the bundle. - "clusters": true, - // Apps: stateless; all config and code deployed from bundle. - "apps": true, - // SQL warehouses: compute endpoint; query history stored separately. - "sql_warehouses": true, - // External locations: metadata pointer only; underlying cloud storage is not deleted. - "external_locations": true, - // Synced database tables: PurgeData=false preserves synced data; source always preserved. - "synced_database_tables": true, - // Postgres endpoints: stateless connection config; data lives in branch/project. - "postgres_endpoints": true, + return resourceDestroyMessage[resourceType] } func approvalForDeploy(ctx context.Context, b *bundle.Bundle, plan *deployplan.Plan) (bool, error) { @@ -90,33 +46,14 @@ func approvalForDeploy(ctx context.Context, b *bundle.Bundle, plan *deployplan.P return false, err } - types := []deployplan.ActionType{deployplan.Recreate, deployplan.Delete} - - // Collect destructive actions for resource types that are NOT safe to destroy. - // Child resources (e.g. permissions, grants) are excluded because deleting - // them does not cause data loss in the parent resource. - var destructiveActions []deployplan.Action - for _, action := range actions { - if action.IsChildResource() || isActionSafeToDestroy(action) { - continue - } - for _, t := range types { - if action.ActionType == t { - destructiveActions = append(destructiveActions, action) - break - } - } - } + destructiveActions := collectDestructiveActions(actions) // We don't need to display any prompts in this case. if len(destructiveActions) == 0 { return true, nil } - cmdio.LogString(ctx, deleteOrRecreateResourceMessage) - for _, action := range destructiveActions { - cmdio.Log(ctx, action) - } + logDestructiveActions(ctx, destructiveActions) if b.AutoApprove { return true, nil @@ -135,6 +72,48 @@ func approvalForDeploy(ctx context.Context, b *bundle.Bundle, plan *deployplan.P return approved, nil } +// collectDestructiveActions returns delete/recreate actions for resource types +// that are not safe to destroy. Child resources (permissions, grants) are excluded. +func collectDestructiveActions(actions []deployplan.Action) []deployplan.Action { + var result []deployplan.Action + for _, action := range actions { + if action.IsChildResource() { + continue + } + if action.ActionType != deployplan.Recreate && action.ActionType != deployplan.Delete { + continue + } + if resourceDestroyWarning(action) == "" { + continue + } + result = append(result, action) + } + return result +} + +// logDestructiveActions prints grouped warning messages for destructive actions. +// Actions are grouped by their warning message so that each unique message is +// printed once, followed by the affected resources. +func logDestructiveActions(ctx context.Context, actions []deployplan.Action) { + // Use a slice to preserve insertion order of messages. + var messages []string + groups := map[string][]deployplan.Action{} + for _, action := range actions { + msg := resourceDestroyWarning(action) + if _, seen := groups[msg]; !seen { + messages = append(messages, msg) + } + groups[msg] = append(groups[msg], action) + } + + for _, msg := range messages { + cmdio.LogString(ctx, "\n"+msg) + for _, action := range groups[msg] { + cmdio.Log(ctx, action) + } + } +} + func deployCore(ctx context.Context, b *bundle.Bundle, plan *deployplan.Plan, targetEngine engine.EngineType) { // Core mutators that CRUD resources and modify deployment state. These // mutators need informed consent if they are potentially destructive. diff --git a/bundle/phases/deploy_test.go b/bundle/phases/deploy_test.go new file mode 100644 index 0000000000..f1545e371f --- /dev/null +++ b/bundle/phases/deploy_test.go @@ -0,0 +1,22 @@ +package phases + +import ( + "testing" + + "github.com/databricks/cli/bundle/config" + "github.com/stretchr/testify/assert" +) + +func TestResourceDestroyMessageIsComplete(t *testing.T) { + supported := config.SupportedResources() + + for resourceType := range supported { + _, ok := resourceDestroyMessage[resourceType] + assert.True(t, ok, "resourceDestroyMessage is missing entry for %q", resourceType) + } + + for resourceType := range resourceDestroyMessage { + _, ok := supported[resourceType] + assert.True(t, ok, "resourceDestroyMessage has entry for %q which is not a supported resource type", resourceType) + } +} diff --git a/bundle/phases/destroy.go b/bundle/phases/destroy.go index bc8ba5f49d..4b4685e91d 100644 --- a/bundle/phases/destroy.go +++ b/bundle/phases/destroy.go @@ -51,21 +51,9 @@ func approvalForDestroy(ctx context.Context, b *bundle.Bundle, plan *deployplan. cmdio.LogString(ctx, "") } - // Highlight resources that may cause data loss when destroyed. - // Child resources (e.g. permissions, grants) are excluded because deleting - // them does not cause data loss in the parent resource. - var dataLossActions []deployplan.Action - for _, a := range deleteActions { - if !a.IsChildResource() && !isActionSafeToDestroy(a) && a.ActionType == deployplan.Delete { - dataLossActions = append(dataLossActions, a) - } - } - + dataLossActions := collectDestructiveActions(deleteActions) if len(dataLossActions) > 0 { - cmdio.LogString(ctx, deleteResourceMessage) - for _, a := range dataLossActions { - cmdio.Log(ctx, a) - } + logDestructiveActions(ctx, dataLossActions) cmdio.LogString(ctx, "") } diff --git a/bundle/phases/messages.go b/bundle/phases/messages.go index 67dfddf690..976ce10e19 100644 --- a/bundle/phases/messages.go +++ b/bundle/phases/messages.go @@ -1,13 +1,82 @@ package phases -// Messages for bundle deploy. -const ( - deleteOrRecreateResourceMessage = ` -This action will result in the deletion or recreation of the following resources. -Deleted or recreated resources may result in data loss or other irreversible consequences:` -) - -// Messages for bundle destroy. -const ( - deleteResourceMessage = `The following resources may contain data that will be lost upon deletion:` -) +// resourceDestroyMessage maps each resource type to a warning message displayed +// when the resource is deleted or recreated. An empty string means the resource +// is safe to delete/recreate without a warning. +// +// Rubric: a resource needs a warning if its deletion may cause non-recoverable +// data loss. A resource is safe if it holds only ephemeral state or configuration +// that is fully recoverable by redeploying the bundle. +// +// Every resource type returned by [config.SupportedResources] must have an entry. +// This is enforced by TestResourceDestroyMessageIsComplete. +var resourceDestroyMessage = map[string]string{ + // Safe resources (no warning): + + // Jobs: run history persists independently of the job definition. + "jobs": "", + // Model serving endpoints: stateless config; inference tables live in UC independently. + "model_serving_endpoints": "", + // Clusters: pure ephemeral compute; all config is in the bundle. + "clusters": "", + // Apps: stateless; all config and code deployed from bundle. + "apps": "", + // SQL warehouses: compute endpoint; query history stored separately. + "sql_warehouses": "", + // External locations: metadata pointer only; underlying cloud storage is not deleted. + "external_locations": "", + // Synced database tables: PurgeData=false preserves synced data; source always preserved. + "synced_database_tables": "", + // Postgres endpoints: stateless connection config; data lives in branch/project. + "postgres_endpoints": "", + + // Unsafe resources (warning required): + + "schemas": "This action will result in the deletion or recreation of the following " + + "UC schemas along with all the tables and views they contain:", + + "volumes": "This action will result in the deletion or recreation of the following volumes. " + + "For managed volumes, the files stored in the volume are also deleted from your " + + "cloud tenant within 30 days. For external volumes, the metadata about the volume " + + "is removed from the catalog, but the underlying files are not deleted:", + + "pipelines": "This action will result in the deletion or recreation of the following " + + "Lakeflow Spark Declarative Pipelines along with the Streaming Tables (STs) and " + + "Materialized Views (MVs) managed by them:", + + "dashboards": "This action will result in the deletion or recreation of the following " + + "dashboards. Recreated dashboards will have new IDs and permanent URLs:", + + "catalogs": "This action will result in the deletion or recreation of the following " + + "UC catalogs along with all the schemas, tables, and views they contain:", + + "secret_scopes": "This action will result in the deletion or recreation of the following " + + "secret scopes. All secrets stored in them will be permanently lost:", + + "database_instances": "This action will result in the deletion or recreation of the following " + + "database instances. All data stored in them will be permanently lost:", + + "database_catalogs": "This action will result in the deletion or recreation of the following " + + "database catalogs. All data stored in them will be permanently lost:", + + "postgres_projects": "This action will result in the deletion or recreation of the following " + + "Postgres projects along with all their branches, databases, and endpoints:", + + "postgres_branches": "This action will result in the deletion or recreation of the following " + + "Postgres branches along with all data they contain:", + + "models": "This action will result in the deletion or recreation of the following " + + "MLflow models along with all their versions and artifacts:", + + "registered_models": "This action will result in the deletion or recreation of the following " + + "registered models along with all their versions:", + + "experiments": "This action will result in the deletion or recreation of the following " + + "MLflow experiments along with all their runs, metrics, and artifacts:", + + "quality_monitors": "This action will result in the deletion or recreation of the following " + + "quality monitors. Associated metric tables may be lost or orphaned:", + + "alerts": "This action will result in the deletion or recreation of the following " + + "alerts. Evaluation and notification history will be permanently lost:", +}