microsoft / microsoft/aspire

aspire destroy: Purge soft-deleted Azure resources after resource group deletion

Open
#16,102 0 comments 0 reactions 0 assignees View on GitHub
area-deployment
Dominant language
C#
Stars
6.3k
Forks
991
Avg merge
2d 15h
Merged PRs (30d)
196

Description

## Problem

Several Azure resources support soft-delete and will block re-creation with the same name after `aspire destroy`:

| Resource | Retention | Impact |
|----------|-----------|--------|
| Key Vault | 90 days | Can't create new vault with same name |
| App Configuration | 7 days | Same name collision |
| Cognitive Services | 48 hours | Same name collision |
| API Management | 48 hours | Same name collision |

After `aspire destroy` deletes the resource group, these resources enter soft-delete state. If the user runs `aspire deploy` again, provisioning fails with name conflicts.

## Expected behavior

`aspire destroy` should purge soft-deleted resources after RG deletion, similar to how `azd down --purge` handles this. Could be opt-in via `--purge` flag or default behavior.

## Reference

`azd down` implementation: identifies Key Vault, Managed HSM, Cognitive Services, App Config, API Management, and Log Analytics workspaces for purging (`bicep_provider.go:1363-1721`).

## Context

Follow-up from #16097 (`aspire destroy`). Discussed during design but deferred to v2.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.