Skip to content

Commit 2d10e3a

Browse files
authored
fix(api): incomplete CEL for namespace immutability check in GrafanaManifest (#2584)
* fix(api): CEL validation for namespace immutability in GrafanaManifest * chore: regenerate manifests
1 parent 9b4d2c7 commit 2d10e3a

File tree

5 files changed

+8
-5
lines changed

5 files changed

+8
-5
lines changed

api/v1beta1/typeoverrides.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ import (
2020

2121
// RequiredObjectMeta contains only a [subset of the fields included in k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.27/#objectmeta-v1-meta).
2222
// It requires `name` to be set
23-
// +kubebuilder:validation:XValidation:rule="(!(has(oldSelf.__namespace__) && !has(self.__namespace__)))", message="namespace is immutable"
23+
// +kubebuilder:validation:XValidation:rule="((!has(oldSelf.__namespace__) && !has(self.__namespace__)) || (has(oldSelf.__namespace__) && has(self.__namespace__)))", message="namespace is immutable"
2424
type RequiredObjectMeta struct {
2525
// +kubebuilder:validation:XValidation:rule="self == oldSelf",message="Value is immutable"
2626
Name string `json:"name" protobuf:"bytes,1,opt,name=name"`

config/crd/bases/grafana.integreatly.org_grafanamanifests.yaml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -241,7 +241,8 @@ spec:
241241
type: object
242242
x-kubernetes-validations:
243243
- message: namespace is immutable
244-
rule: (!(has(oldSelf.__namespace__) && !has(self.__namespace__)))
244+
rule: ((!has(oldSelf.__namespace__) && !has(self.__namespace__))
245+
|| (has(oldSelf.__namespace__) && has(self.__namespace__)))
245246
spec:
246247
x-kubernetes-preserve-unknown-fields: true
247248
required:

deploy/helm/grafana-operator/files/crds/grafana.integreatly.org_grafanamanifests.yaml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -241,7 +241,8 @@ spec:
241241
type: object
242242
x-kubernetes-validations:
243243
- message: namespace is immutable
244-
rule: (!(has(oldSelf.__namespace__) && !has(self.__namespace__)))
244+
rule: ((!has(oldSelf.__namespace__) && !has(self.__namespace__))
245+
|| (has(oldSelf.__namespace__) && has(self.__namespace__)))
245246
spec:
246247
x-kubernetes-preserve-unknown-fields: true
247248
required:

deploy/kustomize/base/crds.yaml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2644,7 +2644,8 @@ spec:
26442644
type: object
26452645
x-kubernetes-validations:
26462646
- message: namespace is immutable
2647-
rule: (!(has(oldSelf.__namespace__) && !has(self.__namespace__)))
2647+
rule: ((!has(oldSelf.__namespace__) && !has(self.__namespace__))
2648+
|| (has(oldSelf.__namespace__) && has(self.__namespace__)))
26482649
spec:
26492650
x-kubernetes-preserve-unknown-fields: true
26502651
required:

docs/docs/api.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4992,7 +4992,7 @@ merge patch.<br/>
49924992
RequiredObjectMeta contains only a [subset of the fields included in k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.27/#objectmeta-v1-meta).
49934993
It requires `name` to be set<br/>
49944994
<br/>
4995-
<i>Validations</i>:<li>(!(has(oldSelf.__namespace__) && !has(self.__namespace__))): namespace is immutable</li>
4995+
<i>Validations</i>:<li>((!has(oldSelf.__namespace__) && !has(self.__namespace__)) || (has(oldSelf.__namespace__) && has(self.__namespace__))): namespace is immutable</li>
49964996
</td>
49974997
<td>true</td>
49984998
</tr><tr>

0 commit comments

Comments
 (0)