You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Remove the `openstack.org/backup` annotation from CRD specifications
since OADP Backup CR uses full namespace backup without label selector.
All CRs are backed up regardless of annotations, making the backup
annotation unnecessary for CRDs.
Key changes:
- Remove backup annotation from CRD examples and definitions
- Update CRD annotation mapping tables (remove Backup column)
- Clarify that all CRs are backed up via full namespace backup
- Maintain selective restore using only backup-restore annotation
- PVCs still use dual-label approach (backup + backup-restore labels)
This simplifies the design to "full backup, selective restore" for CRs
while PVCs remain an exception with selective backup and restore.
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
# NO backup-restore annotation # Don't restore (default: false)
67
+
# All instances still backed up (full namespace backup)
77
68
78
69
# OpenStackControlPlane - backup AND restore
79
70
apiVersion: apiextensions.k8s.io/v1
80
71
kind: CustomResourceDefinition
81
72
metadata:
82
73
name: openstackcontrolplanes.core.openstack.org
83
74
annotations:
84
-
openstack.org/backup: "true" # Include in backup
85
75
openstack.org/backup-restore: "true" # Include in restore
86
76
openstack.org/backup-category: "controlplane"
87
77
openstack.org/backup-restore-order: "6"
@@ -426,8 +416,7 @@ spec:
426
416
427
417
**Why backup ALL CRs/Secrets/ConfigMaps?**
428
418
- Ensures complete snapshot (nothing missed)
429
-
- CRD `openstack.org/backup` annotation **defaults to true** if missing (inclusive)
430
-
- Simple backup logic (no complex filtering)
419
+
- Simple backup logic (no label selector on OADP Backup CR)
431
420
- Restore is selective via webhook labels (see below - only resources with `backup-restore: "true"` labels are restored)
432
421
- Examples of backed up but not restored: DataPlaneDeployment, operator-managed Secrets/ConfigMaps
433
422
@@ -721,41 +710,42 @@ The restore sequence is critical for maintaining dependencies between resources.
721
710
This section shows the annotations that should be added to each CRD definition.
722
711
723
712
**Column definitions:**
724
-
- **Backup**: `openstack.org/backup` annotation value (true = include in backup, defaults to true if missing)
725
713
- **Restore**: `openstack.org/backup-restore` annotation value (true = webhook labels instances for restore, defaults to false if missing)
726
714
- **Category**: `openstack.org/backup-category` annotation value
727
715
- **Order**: `openstack.org/backup-restore-order` annotation value
728
716
717
+
**Note:** All CRs are backed up via full namespace backup (OADP Backup CR has no label selector). Only CRs with `backup-restore: true` annotation are restored.
0 commit comments