--- apiVersion: admissionregistration.k8s.io/v1 kind: ValidatingAdmissionPolicy metadata: annotations: capability.openshift.io/name: Ingress include.release.openshift.io/ibm-cloud-managed: "true" creationTimestamp: "2026-10-30T00:38:12Z" generation: 1 managedFields: - apiVersion: admissionregistration.k8s.io/v1 fieldsType: FieldsV1 fieldsV1: f:status: f:observedGeneration: {} f:typeChecking: {} manager: validatingadmissionpolicy-status operation: Apply subresource: status time: "2026-10-30T00:38:12Z" - apiVersion: admissionregistration.k8s.io/v1 fieldsType: FieldsV1 fieldsV1: f:metadata: f:annotations: .: {} f:capability.openshift.io/name: {} f:include.release.openshift.io/ibm-cloud-managed: {} f:ownerReferences: .: {} k:{"uid":"c36e78c3-0bdb-4b00-9eec-5151ab3726f2"}: {} f:spec: f:failurePolicy: {} f:matchConditions: .: {} k:{"name":"check-only-gateway-api-crds"}: .: {} f:expression: {} f:name: {} f:matchConstraints: {} f:validations: {} manager: cluster-version-operator operation: Update time: "2026-10-30T00:38:12Z" name: openshift-ingress-operator-gatewayapi-crd-admission ownerReferences: - apiVersion: config.openshift.io/v1 controller: true kind: ClusterVersion name: version uid: c36e78c3-0bdb-4b00-9eec-5151ab3726f2 resourceVersion: "1978" uid: 0b4fd25a-65a0-48ef-bd50-ce767a3743c8 spec: failurePolicy: Fail matchConditions: - expression: '(request.operation == ''DELETE'' ? oldObject : object).spec.group == ''gateway.networking.k8s.io''' name: check-only-gateway-api-crds matchConstraints: matchPolicy: Equivalent namespaceSelector: {} objectSelector: {} resourceRules: - apiGroups: - apiextensions.k8s.io apiVersions: - v1 operations: - CREATE - UPDATE - DELETE resources: - customresourcedefinitions scope: '*' validations: - expression: has(request.userInfo.username) && (request.userInfo.username == 'system:serviceaccount:openshift-ingress-operator:ingress-operator') message: Gateway API Custom Resource Definitions are managed by the Ingress Operator and may not be modified reason: Forbidden status: observedGeneration: 1 typeChecking: {}