--- 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-19T12:14:09Z" 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":"f465dca7-e96e-4838-88f3-6a9c73ce9289"}: {} 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-19T12:14:09Z" - 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-19T12:14:09Z" name: monitoringconfigmaps.openshift.io ownerReferences: - apiVersion: config.openshift.io/v1 controller: true kind: ClusterVersion name: version uid: f465dca7-e96e-4838-88f3-6a9c73ce9289 resourceVersion: "16989" uid: a73cc3d7-f5ba-4a62-988e-af633d747599 webhooks: - admissionReviewVersions: - v1 clientConfig: caBundle: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURVVENDQWptZ0F3SUJBZ0lJZE9pOGVsZmNldEF3RFFZSktvWklodmNOQVFFTEJRQXdOakUwTURJR0ExVUUKQXd3cmIzQmxibk5vYVdaMExYTmxjblpwWTJVdGMyVnlkbWx1WnkxemFXZHVaWEpBTVRjM016a3lNVEU1TnpBZQpGdzB5TmpBek1Ua3hNVFV6TVRkYUZ3MHlPREExTVRjeE1UVXpNVGhhTURZeE5EQXlCZ05WQkFNTUsyOXdaVzV6CmFHbG1kQzF6WlhKMmFXTmxMWE5sY25acGJtY3RjMmxuYm1WeVFERTNOek01TWpFeE9UY3dnZ0VpTUEwR0NTcUcKU0liM0RRRUJBUVVBQTRJQkR3QXdnZ0VLQW9JQkFRQzdJc0IvNTQrWjh6RWpZWmZxWkN4RjB5UWxDekxicWhKVwpXRFJMUUpGVmZ4VFkyQnFHL2FmMW5ZUS8yU3pWOFIrdzhTY0lGcGd6dDRYckI3UG9adDU3MVp1VHlGUFJ3ZjdCCmtwRXQ1eXlIOGd2MHcrNzNoS3pONGRQb0ZveU1ISnhuTXc5UjF1ckNiRXZ2emVvVENwS3JuUitXazE2SDFBQk4KWkRIYnVwZUlHdEsxeXQyTVpCaGNjNGY3a3Joc3lMNmN0azE5MVRQN2hDL2RqWlBhVloxSnNSbDdhZFlTdWJDRQo2aEthd0hqRlE4SG1NWDJTMkx0OE1IWDJVRnBXNGdOcGV4SkJBcFhGN3RHZE56YWxRelRhRGhkVi9aM2lxNlQ2CnJEcE5TUVY5bmtsWmFYVHhQQmlSeVQwcEorV3pleW5vSjJOclBPc2NTNVdTa2NjMGliS1RBZ01CQUFHall6QmgKTUE0R0ExVWREd0VCL3dRRUF3SUNwREFQQmdOVkhSTUJBZjhFQlRBREFRSC9NQjBHQTFVZERnUVdCQlQyVzRCRAp2ZlM0UGQ0d2VRTzdyeEdnamxMMWpqQWZCZ05WSFNNRUdEQVdnQlQyVzRCRHZmUzRQZDR3ZVFPN3J4R2dqbEwxCmpqQU5CZ2txaGtpRzl3MEJBUXNGQUFPQ0FRRUFVODVVUlk0OFBTOGdhRlkzbXJtOW12RDM0bUUrSkcxa0txdEQKZ1BzdFcxdXRUcGpSbTRPZ3JoMWNuVnIvZnpIVmp1WkxlSmxCM0N4S2VmUGdmdWVpY1BlcVVsZndjM3FuWXY2ZwpJNXNqcWlOL1dJeUlMVDRZbStzejd4V3Frc2FLdE9ZUU5vS2JJUkNaV1R6RXdOQ29QR0hScjlxay9ZbTI3VDE0CndzUjVDUXE3aWd6L012N3FGVnJ0MWxxN25Nczd0T3pwSEp6bnlIMzE3K2xYaC9OMWpzNzNBOVlxOUJlZGtzNTgKZ0U3ek5ncGpKUDc2ZWswVG5LVmZxOE9QaHNDSThPU1pSZSs5bjN6d3VHakhzSTdjTk5QRXBjajlqQjA5a0NTVQoxOG9yTUVDTEFKMG5UU0hCQU93RlBySU83QjRFRHlLU2VlSHhoRFUrRENVaGNvcWp3UT09Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K 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