--- apiVersion: admissionregistration.k8s.io/v1 kind: ValidatingWebhookConfiguration metadata: annotations: include.release.openshift.io/hypershift: "true" include.release.openshift.io/ibm-cloud-managed: "true" include.release.openshift.io/self-managed-high-availability: "true" include.release.openshift.io/single-node-developer: "true" service.beta.openshift.io/inject-cabundle: "true" creationTimestamp: "2026-03-12T14:41:06Z" generation: 2 labels: app.kubernetes.io/managed-by: cluster-version-operator app.kubernetes.io/part-of: openshift-monitoring managedFields: - apiVersion: admissionregistration.k8s.io/v1 fieldsType: FieldsV1 fieldsV1: f:metadata: f:annotations: .: {} f:include.release.openshift.io/hypershift: {} f:include.release.openshift.io/ibm-cloud-managed: {} f:include.release.openshift.io/self-managed-high-availability: {} f:include.release.openshift.io/single-node-developer: {} f:service.beta.openshift.io/inject-cabundle: {} f:labels: .: {} f:app.kubernetes.io/managed-by: {} f:app.kubernetes.io/part-of: {} f:ownerReferences: .: {} k:{"uid":"8d630814-4840-4874-b22d-c9a3b04d0b40"}: {} f:webhooks: .: {} k:{"name":"monitoringconfigmaps.openshift.io"}: .: {} f:admissionReviewVersions: {} f:clientConfig: .: {} f:service: .: {} f:name: {} f:namespace: {} f:path: {} f:port: {} f:failurePolicy: {} f:matchConditions: .: {} k:{"name":"monitoringconfigmaps"}: .: {} f:expression: {} f:name: {} k:{"name":"not-skipped"}: .: {} f:expression: {} f:name: {} f:matchPolicy: {} f:name: {} f:namespaceSelector: {} f:objectSelector: {} f:rules: {} f:sideEffects: {} f:timeoutSeconds: {} manager: cluster-version-operator operation: Update time: "2026-03-12T14:41:06Z" - apiVersion: admissionregistration.k8s.io/v1 fieldsType: FieldsV1 fieldsV1: f:webhooks: k:{"name":"monitoringconfigmaps.openshift.io"}: f:clientConfig: f:caBundle: {} manager: service-ca-operator operation: Update time: "2026-03-12T14:41:06Z" name: monitoringconfigmaps.openshift.io ownerReferences: - apiVersion: config.openshift.io/v1 controller: true kind: ClusterVersion name: version uid: 8d630814-4840-4874-b22d-c9a3b04d0b40 resourceVersion: "18432" uid: 43093c27-1dbe-4161-9050-e0e2c849ffc6 webhooks: - admissionReviewVersions: - v1 clientConfig: caBundle: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURVVENDQWptZ0F3SUJBZ0lJQWRSakVBRVZ5QUF3RFFZSktvWklodmNOQVFFTEJRQXdOakUwTURJR0ExVUUKQXd3cmIzQmxibk5vYVdaMExYTmxjblpwWTJVdGMyVnlkbWx1WnkxemFXZHVaWEpBTVRjM016TXlORGMwTmpBZQpGdzB5TmpBek1USXhOREV5TWpWYUZ3MHlPREExTVRBeE5ERXlNalphTURZeE5EQXlCZ05WQkFNTUsyOXdaVzV6CmFHbG1kQzF6WlhKMmFXTmxMWE5sY25acGJtY3RjMmxuYm1WeVFERTNOek16TWpRM05EWXdnZ0VpTUEwR0NTcUcKU0liM0RRRUJBUVVBQTRJQkR3QXdnZ0VLQW9JQkFRRCtRV215b0VTbDMrR0dZTjdMMDZpT3V2enlCRll2Q0dNRwpFUnJLbUdLTkpMcGRRNlZCNE13MklGbjQzY3g2TWVyQStiK20xdkFlS0h4S08wZzEwdUZFOTdDNTVJQmk1NThICmZaRW1oYXJycEViblhlUys5Qk5UTTNCVDgzNng1SmZtT2g0T1RkeDVnSW1nQ1poWFRSKzdXdjZ2QWluQkRtcVYKNEpOb2xrdWZYUE50Nm84SlM3c00rQkd5eXlCUGxJUU9NMVpGeHpYekoyWUFXNzdOTWNhcGhBck5yRXFIR1YxRApDa2ZYSGY0RUZ1RmZvbWlCeGUxcW5NZHlLM2JrUlhpOEpuUHF6RHIxNVRDTVRsdkhDb2tTQStWa0swR2tEVzBOCjN3UG1KRU04WTdXQkZ1UmxJd2FQd3ZTbWhKanNjT2liYXlTUUNIQVlWbEFvRy9rUjdrRFRBZ01CQUFHall6QmgKTUE0R0ExVWREd0VCL3dRRUF3SUNwREFQQmdOVkhSTUJBZjhFQlRBREFRSC9NQjBHQTFVZERnUVdCQlJVZmpRMwpHemdmbzBCMUtKblRITTlFa2wxN2xUQWZCZ05WSFNNRUdEQVdnQlJVZmpRM0d6Z2ZvMEIxS0puVEhNOUVrbDE3CmxUQU5CZ2txaGtpRzl3MEJBUXNGQUFPQ0FRRUEyT0cvREQ4S1pITG5CeHFLUW1EbUpocW8yVDh3M0xsQ2NKQnQKRGpwa3FDdGhISVU5YUpIVTJKYVo0MnRudzJ1S0x5SDhqaU9scUNJcFdaQzRseUQ3NlNvbUhWd01rZlMzdjVjWApPcGhBSTlXd1dWMTQrRW1ZR0JnZjhSQTAyOUY0SC9mbGRWMWNZUXh5VzZ2SnlORXR1ZDN3SCsvekc1YzNzWWlSCkxKOHZuSnU1czNZTEtFZGtsQit5RSsrM0x2NXh5UTMvN3hTdFdnb0M1ZUQ0V2VzSmtSWkVITlE5emZ4Q25VNG4KQnNQNnlvQVNlMU50S0l1cjVEUTRCZkxiYnJBMzU2aDJSNFVIR1lidC96Kzg1Q1NIUWtmY0lERnJ2TjdWSTdCaAoydHBHNEcyUFR4b1RDQXNqUWFOTFJqekkwY0lGUnlSWDhPeGYyN3ZmVVRjbUZzWXdlUT09Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K service: name: cluster-monitoring-operator namespace: openshift-monitoring path: /validate-webhook/monitoringconfigmaps port: 8443 failurePolicy: Ignore matchConditions: - expression: (request.namespace == "openshift-monitoring" && request.name == "cluster-monitoring-config") || (request.namespace == "openshift-user-workload-monitoring" && request.name == "user-workload-monitoring-config") name: monitoringconfigmaps - expression: '!has(object.metadata.labels) || !("monitoringconfigmaps.openshift.io/skip-validate-webhook" in object.metadata.labels) || object.metadata.labels["monitoringconfigmaps.openshift.io/skip-validate-webhook"] != "true"' name: not-skipped matchPolicy: Equivalent name: monitoringconfigmaps.openshift.io namespaceSelector: matchExpressions: - key: kubernetes.io/metadata.name operator: In values: - openshift-monitoring - openshift-user-workload-monitoring objectSelector: {} rules: - apiGroups: - "" apiVersions: - v1 operations: - CREATE - UPDATE resources: - configmaps scope: Namespaced sideEffects: None timeoutSeconds: 5