[b/r] Add OpenStackBackupConfig controller and backup/restore labeling#1868
[b/r] Add OpenStackBackupConfig controller and backup/restore labeling#1868stuggi wants to merge 3 commits intoopenstack-k8s-operators:mainfrom
Conversation
Add the BackupConfig CRD, API types, controller, RBAC, samples, and envtests for the backup/restore labeling feature. The controller watches CRD instances across operators and labels resources (secrets, configmaps, NADs, cert-manager issuers) with backup.openstack.org labels for backup/restore integration. Supports annotation overrides on individual resources to customize restore ordering or exclude from backup. Jira: OSPRH-22912 Jira: OSPRH-22913 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> Signed-off-by: Martin Schuppert <mschuppert@redhat.com>
Wire the BackupConfig reconciliation into the ControlPlane controller. Add backup/restore labels to CA cert secrets via SecretTemplate, and restore=false labels to internal service cert requests. Add the ReconcileBackupConfig call, secret watch with annotation change predicate, and RBAC for openstackbackupconfigs. Set BackupConfig spec defaults in the CreateOrPatch mutate function. Jira: OSPRH-22912 Jira: OSPRH-22913 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> Signed-off-by: Martin Schuppert <mschuppert@redhat.com>
|
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: stuggi The full list of commands accepted by this bot can be found here. The pull request process is described here DetailsNeeds approval from an approver in each of these files:
Approvers can indicate their approval by writing |
OpenStackControlPlane CRD Size Report
Threshold reference
|
|
Build failed (check pipeline). Post https://softwarefactory-project.io/zuul/t/rdoproject.org/buildset/dd57c92b72a04ef0929c08fe0728effe ❌ openstack-k8s-operators-content-provider FAILURE in 9m 19s |
Revert IMAGENAMESPACE behavior to pre-507cdb80 logic where it only affects replaced operators (non-openstack-k8s-operators) and operators matching IMAGEBASE. Standard openstack-k8s-operators bundles now always use quay.io/openstack-k8s-operators regardless of IMAGENAMESPACE. This fixes the issue where setting IMAGENAMESPACE to a custom value would try to find all bundles (barbican, cinder, etc.) in the custom namespace instead of quay.io/openstack-k8s-operators, causing failures when those bundles don't exist there. The previous behavior is restored: - IMAGENAMESPACE only affects replaced operators (e.g., custom forks) - IMAGEBASE explicitly targets a specific operator for custom namespace - Standard operators always use openstack-k8s-operators namespace All bug fixes from 507cdb8 are retained (better error handling, jq safety checks, proper query string syntax). Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com> Signed-off-by: Martin Schuppert <mschuppert@redhat.com>
|
Build failed (check pipeline). Post https://softwarefactory-project.io/zuul/t/rdoproject.org/buildset/fe53444e267b46bfab002d52d844e719 ❌ openstack-k8s-operators-content-provider FAILURE in 7m 42s |
|
@stuggi: The following tests failed, say
Full PR test history. Your PR dashboard. DetailsInstructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here. |
Commit 1: [b/r] Add OpenStackBackupConfig controller
Introduces the backup.openstack.org/v1beta1 API group with the OpenStackBackupConfig CRD. The controller:
Commit 2: [b/r] Add backup/restore labels to ControlPlane controller
Integrates backup/restore into the existing ControlPlane reconciliation:
Jira: OSPRH-22912
Jira: OSPRH-22913
Depends-On: openstack-k8s-operators/lib-common#680