Skip to content

Commit 52aa109

Browse files
authored
fix: prevent removing clusterRef or requestRef from AccessRequest (#34)
1 parent aa0f89a commit 52aa109

File tree

2 files changed

+7
-0
lines changed

2 files changed

+7
-0
lines changed

api/clusters/v1alpha1/accessrequest_types.go

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,8 @@ import (
55
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
66
)
77

8+
// +kubebuilder:validation:XValidation:rule="!has(oldSelf.clusterRef) || has(self.clusterRef)", message="clusterRef may not be removed once set"
9+
// +kubebuilder:validation:XValidation:rule="!has(oldSelf.requestRef) || has(self.requestRef)", message="requestRef may not be removed once set"
810
type AccessRequestSpec struct {
911
// ClusterRef is the reference to the Cluster for which access is requested.
1012
// If set, requestRef will be ignored.

api/crds/manifests/clusters.openmcp.cloud_accessrequests.yaml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -155,6 +155,11 @@ spec:
155155
required:
156156
- permissions
157157
type: object
158+
x-kubernetes-validations:
159+
- message: clusterRef may not be removed once set
160+
rule: '!has(oldSelf.clusterRef) || has(self.clusterRef)'
161+
- message: requestRef may not be removed once set
162+
rule: '!has(oldSelf.requestRef) || has(self.requestRef)'
158163
status:
159164
description: AccessRequestStatus defines the observed state of AccessRequest
160165
properties:

0 commit comments

Comments
 (0)