databricks-cli/bundle
Andrew Nester dd554412a6
Retry app deployment if there is an active deployment in progress (#2153)
## Changes
If before running an app, the app was stopped with an active deployment,
then Apps backend start it and does the auto-deploy of the last active
deployment. In such cases StartApp API won't return any active or
pending deployments in its response but doing the deploy immediately
after the start might result in the error `Cannot deploy app *** as
there is an active deployment in progress`.

From DABs side, we have to do a new deployment on every `bundle run`
(command which start the app and does deployment) because local files in
bundle might have been changed and users expect to have the app running
with new code.

Thus this PR works around the error by catching “deployment in progress”
error, getting any active / pending deployments, waits for them to
finish and start the new deployment again. If 2nd attempts fails, the
whole command fails.

## Tests
Added unit test.
2025-01-15 12:51:06 +01:00
..
apps Enable linter 'unconvert' and fix the issues found (#2136) 2025-01-14 10:56:38 +00:00
artifacts Enable perfsprint linter and apply autofix (#2071) 2025-01-07 10:49:23 +00:00
config Migrate resolution tests to acceptance tests (#2143) 2025-01-15 11:22:23 +01:00
deploy Added support for Databricks Apps in DABs (#1928) 2025-01-13 16:43:48 +00:00
env Remove support for DATABRICKS_BUNDLE_INCLUDES (#1317) 2024-03-27 10:13:54 +00:00
internal Bump github.com/databricks/databricks-sdk-go from 0.54.0 to 0.55.0 (#2126) 2025-01-14 16:02:34 +00:00
libraries Enable perfsprint linter and apply autofix (#2071) 2025-01-07 10:49:23 +00:00
metadata Make `file_path` and `artifact_path` fields consistent with json tag (#987) 2023-11-15 13:37:26 +00:00
paths Fixed adding /Workspace prefix for resource paths (#1866) 2024-10-30 17:34:11 +00:00
permissions Added support for Databricks Apps in DABs (#1928) 2025-01-13 16:43:48 +00:00
phases Added support for Databricks Apps in DABs (#1928) 2025-01-13 16:43:48 +00:00
render Enable gofumpt and goimports in golangci-lint (#1999) 2024-12-12 10:28:42 +01:00
resources Fix segfault in bundle summary command (#1937) 2024-11-28 12:27:24 +00:00
run Retry app deployment if there is an active deployment in progress (#2153) 2025-01-15 12:51:06 +01:00
schema Bump github.com/databricks/databricks-sdk-go from 0.54.0 to 0.55.0 (#2126) 2025-01-14 16:02:34 +00:00
scripts Rename `RootPath` -> `BundleRootPath` (#1792) 2024-09-27 10:03:05 +00:00
tests Allow artifact path to be located outside the sync root (#2128) 2025-01-14 08:34:55 +00:00
trampoline Enable perfsprint linter and apply autofix (#2071) 2025-01-07 10:49:23 +00:00
bundle.go Encourage the use of root_path in production to ensure single deployment (#1712) 2025-01-13 12:19:12 +00:00
bundle_read_only.go Properly read Git metadata when running inside workspace (#1945) 2024-12-05 10:13:13 +00:00
bundle_test.go Enable testifylint and fix the issues (#2065) 2025-01-02 12:03:41 +01:00
context.go Rename variable `bundle -> b` (#989) 2023-11-15 14:03:36 +00:00
context_test.go Enable testifylint and fix the issues (#2065) 2025-01-02 12:03:41 +01:00
deferred.go Enable gofumpt and goimports in golangci-lint (#1999) 2024-12-12 10:28:42 +01:00
deferred_test.go Enable 'govet' linter; expand log/diag with non-f functions (#1996) 2024-12-11 16:42:03 +00:00
if.go Return early in bundle destroy if no deployment exists (#1581) 2024-07-09 15:08:38 +00:00
if_test.go Return early in bundle destroy if no deployment exists (#1581) 2024-07-09 15:08:38 +00:00
log_string.go Return `diag.Diagnostics` from mutators (#1305) 2024-03-25 14:18:47 +00:00
mutator.go Return `diag.Diagnostics` from mutators (#1305) 2024-03-25 14:18:47 +00:00
mutator_read_only.go Added validate mutator to surface additional bundle warnings (#1352) 2024-04-18 15:13:16 +00:00
mutator_test.go Return `diag.Diagnostics` from mutators (#1305) 2024-03-25 14:18:47 +00:00
parallel.go Added validate mutator to surface additional bundle warnings (#1352) 2024-04-18 15:13:16 +00:00
parallel_test.go Fix flaky tests for the parallel mutator (#1426) 2024-05-13 12:16:43 +00:00
root.go Enable perfsprint linter and apply autofix (#2071) 2025-01-07 10:49:23 +00:00
root_test.go Enable gofumpt and goimports in golangci-lint (#1999) 2024-12-12 10:28:42 +01:00
seq.go Return `diag.Diagnostics` from mutators (#1305) 2024-03-25 14:18:47 +00:00
seq_test.go Return `diag.Diagnostics` from mutators (#1305) 2024-03-25 14:18:47 +00:00