Skip to content

Commit 1792e40

Browse files
committed
Document and announce ESC deletion protection feature Adds documentation for the deletion protection feature in Pulumi ESC and a blog post announcing its availability. The deletion protection feature prevents accidental deletion of environments by requiring that protection be explicitly disabled before deletion. This helps safeguard production environments and shared configuration. Changes: - Add deletion protection documentation page in administration section - Update administration index to include deletion protection - Create blog post announcing the feature
1 parent 8da60c2 commit 1792e40

File tree

5 files changed

+141
-0
lines changed

5 files changed

+141
-0
lines changed
Lines changed: 62 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,62 @@
1+
---
2+
title: "Deletion Protection for Pulumi ESC Environments"
3+
date: 2025-10-21T14:00:00-07:00
4+
draft: false
5+
meta_desc: "Prevent accidental deletion of critical environments with the new deletion protection feature for Pulumi ESC."
6+
meta_image: meta.png
7+
authors:
8+
- fausto-nunez-alberro
9+
tags:
10+
- esc
11+
- features
12+
- secrets
13+
---
14+
15+
Pulumi ESC environments can now be protected from accidental deletion with a new deletion protection setting.
16+
<!--more-->
17+
18+
Environments often contain configuration that supports production workloads or is shared across multiple stacks. Deleting these environments by mistake can disrupt services and require time-consuming recovery. Deletion protection provides a safeguard against these scenarios.
19+
20+
## How it works
21+
22+
When deletion protection is enabled for an environment, any attempt to delete it fails until protection is explicitly disabled. This applies to deletions from both the Pulumi Cloud console and the ESC CLI.
23+
24+
Protected environments display a shield icon in the environment list and on stack pages where the environment is imported. The icon links directly to the deletion protection settings.
25+
26+
## Managing deletion protection
27+
28+
In the Pulumi Cloud console, navigate to your environment's settings to enable or disable deletion protection with a toggle.
29+
30+
From the CLI, use the new `esc env settings` commands:
31+
32+
```bash
33+
# Enable protection
34+
esc env settings set myorg/myproject/prod deletion-protected true
35+
36+
# View current setting
37+
esc env settings get myorg/myproject/prod deletion-protected
38+
39+
# Disable protection
40+
esc env settings set myorg/myproject/prod deletion-protected false
41+
```
42+
43+
Attempting to delete a protected environment returns a clear error message with instructions.
44+
45+
## When to use deletion protection
46+
47+
Enable deletion protection for:
48+
49+
- Production environments
50+
- Environments imported by multiple stacks
51+
- Environments shared across teams
52+
- Any environment containing configuration that should persist
53+
54+
## Permissions
55+
56+
Only environment admins can modify deletion protection settings. This ensures that protection cannot be removed without appropriate authorization.
57+
58+
## Getting started
59+
60+
Deletion protection is available now for all Pulumi ESC environments. Visit your environment settings or use the ESC CLI to enable it.
61+
62+
For more information, see the [deletion protection documentation](/docs/esc/administration/deletion-protection/).
438 KB
Loading

content/docs/esc/administration/_index.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@ Learn how to configure organizations, monitor audit logs, bring your own encrypt
1919
- [Access tokens](/docs/administration/access-identity/access-tokens/): Securely authenticate and automate ESC operations.
2020
- [Audit logs](/docs/esc/administration/audit-logs/): Access and configure audit logs to track activities and ensure compliance.
2121
- [Approvals](/docs/esc/administration/approvals/): Require explicit review and sign-off before applying changes to ESC-managed environments.
22+
- [Deletion protection](/docs/esc/administration/deletion-protection/): Prevent accidental deletion of critical environments.
2223
- [Customer Managed Keys](/docs/esc/administration/customer-managed-keys/): Bring your own encryption keys for enhanced security and compliance.
2324
- [Access control](/docs/esc/administration/access-control/): Manage environment permissions with role-based access controls at the organization and team levels.
2425
- [OpenID Connect (OIDC)](/docs/administration/access-identity/oidc/): Integrate with trusted third-party identity providers to authenticate users.
Lines changed: 75 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,75 @@
1+
---
2+
title: Deletion protection
3+
title_tag: Deletion protection | Pulumi ESC
4+
h1: Deletion protection
5+
meta_desc: Prevent accidental deletion of critical environments with deletion protection.
6+
menu:
7+
esc:
8+
identifier: deletion-protection
9+
parent: pulumi-esc-admin
10+
weight: 5
11+
---
12+
13+
Deletion protection prevents accidental deletion of environments containing sensitive configuration. When enabled for an environment, deletion attempts are blocked until protection is explicitly disabled.
14+
15+
## Enabling deletion protection
16+
17+
### In the Pulumi Cloud console
18+
19+
Navigate to your environment's settings page and find the deletion protection tab. Toggle the setting to enable protection.
20+
21+
When protection is enabled, the environment delete button is disabled and displays instructions for removing protection.
22+
23+
### Using the ESC CLI
24+
25+
Enable deletion protection using the `esc env settings set` command:
26+
27+
```bash
28+
esc env settings set myorg/myproject/prod deletion-protected true
29+
```
30+
31+
View the current protection status:
32+
33+
```bash
34+
esc env settings get myorg/myproject/prod deletion-protected
35+
```
36+
37+
View all environment settings:
38+
39+
```bash
40+
esc env settings get myorg/myproject/prod
41+
```
42+
43+
## Deleting protected environments
44+
45+
Attempting to delete a protected environment returns an error:
46+
47+
```bash
48+
$ esc env rm myorg/myproject/prod --yes
49+
error: deletion protection is enabled for this environment
50+
```
51+
52+
To delete a protected environment, first disable protection:
53+
54+
```bash
55+
esc env settings set myorg/myproject/prod deletion-protected false
56+
esc env rm myorg/myproject/prod
57+
```
58+
59+
## Visual indicators
60+
61+
Protected environments display an orange shield icon in the environment list and in stack overview pages where the environment is imported. The shield icon links to the deletion protection settings.
62+
63+
## Permissions
64+
65+
Only environment admins can modify deletion protection settings. This requires the `EnvironmentSettingsUpdate` permission.
66+
67+
## Use cases
68+
69+
Deletion protection helps prevent:
70+
71+
- Accidental deletion of production environments
72+
- Removal of environments shared across multiple stacks
73+
- Loss of critical configuration during team transitions
74+
75+
Enable deletion protection for environments that contain production secrets, are imported by multiple stacks, or represent stable configuration that should persist.
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
id = "fausto-nunez-alberro"
2+
name = "Fausto Núñez Alberro"
3+
status = "active"

0 commit comments

Comments
 (0)