From 7b7a3bb9cacce60f76b1dd53f63ec74da906a434 Mon Sep 17 00:00:00 2001 From: "promptless[bot]" Date: Mon, 31 Aug 2026 18:38:42 +0000 Subject: [PATCH] Document endpoint teardown in flash app delete flash app delete now tears down the app's Serverless endpoints before removing the app record, and on partial failure keeps the app record, exits non-zero, and names each surviving endpoint with a runpodctl serverless delete remediation command. Source: runpod/flash#371 --- flash/cli/app.mdx | 33 ++++++++++++++++++++++++++++++++- 1 file changed, 32 insertions(+), 1 deletion(-) diff --git a/flash/cli/app.mdx b/flash/cli/app.mdx index 50912d2bf..71cef0f54 100644 --- a/flash/cli/app.mdx +++ b/flash/cli/app.mdx @@ -143,7 +143,18 @@ Name of the Flash app to delete. 2. Prompts for confirmation (required). 3. Deletes all environments and their resources. 4. Deletes all builds. -5. Deletes the app. +5. Tears down the app's Serverless endpoints. Flash discovers them per Flash environment on Runpod's backend, so teardown works even when no local resource tracking exists (for example, in CI). +6. If every endpoint was removed, deletes the app record. + +If any endpoint cannot be removed, the app record is not deleted and the command exits with a non-zero status; see [app delete fails to remove an endpoint](#app-delete-fails-to-remove-an-endpoint). + +### Output + +Each removed endpoint prints a confirmation line, where `` and `` are the endpoint's name and ID: + +```text +✓ deleted endpoint +``` @@ -174,6 +185,26 @@ flash deploy --app other-project flash env list --app other-project ``` +## Troubleshooting + +### app delete fails to remove an endpoint + +When any endpoint cannot be removed, `flash app delete` does not delete the app record and exits with a non-zero status (exit code 1). It names each endpoint that survived teardown. When the endpoint still has an ID, the message gives the command to remove it: + +```text +endpoint not removed; delete it with runpodctl serverless delete +``` + +Remove the surviving endpoint with [`runpodctl serverless delete`](/runpodctl/reference/runpodctl-serverless#delete-an-endpoint): + +```bash +runpodctl serverless delete +``` + +If an endpoint is reported without an ID, it cannot be removed this way; delete it from the Runpod console instead. + +Re-running `flash app delete ` after a partial teardown is safe: endpoints that were already removed count as removed, so the command retries only the survivors. + ## Related commands - [`flash env`](/flash/cli/env) - Manage environments within an app