--- 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-19T09:40:13Z" 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":"0357f5c3-c143-4fd3-bfde-14870fe57e00"}: {} 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-19T09:40:13Z" - 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-19T09:40:13Z" name: monitoringconfigmaps.openshift.io ownerReferences: - apiVersion: config.openshift.io/v1 controller: true kind: ClusterVersion name: version uid: 0357f5c3-c143-4fd3-bfde-14870fe57e00 resourceVersion: "17350" uid: 33dc4ca3-8db5-4687-98bc-a660375c1e4d webhooks: - admissionReviewVersions: - v1 clientConfig: caBundle: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURVVENDQWptZ0F3SUJBZ0lJT01JZWRJYnhyNGd3RFFZSktvWklodmNOQVFFTEJRQXdOakUwTURJR0ExVUUKQXd3cmIzQmxibk5vYVdaMExYTmxjblpwWTJVdGMyVnlkbWx1WnkxemFXZHVaWEpBTVRjM016a3hNakF6TnpBZQpGdzB5TmpBek1Ua3dPVEl3TXpkYUZ3MHlPREExTVRjd09USXdNemhhTURZeE5EQXlCZ05WQkFNTUsyOXdaVzV6CmFHbG1kQzF6WlhKMmFXTmxMWE5sY25acGJtY3RjMmxuYm1WeVFERTNOek01TVRJd016Y3dnZ0VpTUEwR0NTcUcKU0liM0RRRUJBUVVBQTRJQkR3QXdnZ0VLQW9JQkFRQy9tWDBOTVdxTERDcGFVL242QlFwT1dZck8wcmFvZzZpKwp5UlZvZHNqb2hJQmx5eU9wd3kzdzEyVzhaYVdtRXNTZk5pMmtYSm55bXBKNHhJSjc4VEFoMzd3R1k2cVpQeERyCktSWnVTRHMrd1NuajAyeHhqdU5mMnRDYnlzTFRjYWZIQmJPOHhJVGJ4c0dtbkpvZTlWV2NjSlgyeG4xVXF0TFUKTWZlbC8zQkRPR2pOMmZsRUNibThOeEZ3MTdhUHFjTDlPOVJkT0NhU0Zxd20xNnQvZUhLRnRJWkJLVHhiL3J1dwpDNkNNZG94Q01oYVh0dSs5V1NlTmZXZXhyUVNkV0IzZHdhdmY4N2lXRFduUm1NR3VMeFR4Q1YzRDQzbko1SHFLCmdYdVBJVmJEZWh6K0ZFdW5HQnlybnZrSXowc1F3aTdWOUJqNUVaQXc5eHBCYzBlV0VRRXJBZ01CQUFHall6QmgKTUE0R0ExVWREd0VCL3dRRUF3SUNwREFQQmdOVkhSTUJBZjhFQlRBREFRSC9NQjBHQTFVZERnUVdCQlIrdDl2WApOZkJ1OFZSRUJqZ3FyTDd4Rmo1TEFqQWZCZ05WSFNNRUdEQVdnQlIrdDl2WE5mQnU4VlJFQmpncXJMN3hGajVMCkFqQU5CZ2txaGtpRzl3MEJBUXNGQUFPQ0FRRUFPQnZIWmhZcUZaaUY1N1FYaHJaYXQxWWh6WU9yVWEvZHZqbjYKUkJqNGJGYURSMFI5OG96TkJVMk83R0VmK3doSkVENGJQcHo0NFBqV0FVYTJVTzZyVzJZTjN5clFyRG8zOFlxego1U1o2RGNUSFQ5SmVDdnJqS2ZNWFlMcFliUURBeWY5enpLZTN0d3NvQTVDcUJCV0tjNy81YStISVpQcUJmQXQvClBWZE0wT2ZwSXh6c0k5RkI4YzdYNnZ2ZjdDNTdQRk9uTVlFWHJIdDFmZXNpVGVoS29xS0RiQXUwWm1wd3lndTYKZUlGRTZicS9UaE5TOWhPdTBqTW40SytXMzFucTlvczJCbDlNR0JIZUU5bloxdDdmcUd2TkR5ZWQ5aHYvRkptRQpCK1M3RmxFMnRxcGRTNEF5UFIrcW1ldkNBTzV5T3RmajV4M2dtcXA5U0FzT2haY2dUZz09Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K 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