apiVersion: operators.coreos.com/v1alpha1
kind: ClusterServiceVersion
metadata:
  annotations:
    alm-examples: |-
      [
        {
          "apiVersion": "monitoring.rhobs/v1alpha1",
          "kind": "MonitoringStack",
          "metadata": {
            "labels": {
              "mso": "example"
            },
            "name": "sample-monitoring-stack"
          },
          "spec": {
            "logLevel": "debug",
            "resourceSelector": {
              "matchLabels": {
                "app": "demo"
              }
            },
            "retention": "1d"
          }
        },
        {
          "apiVersion": "monitoring.rhobs/v1alpha1",
          "kind": "ThanosQuerier",
          "metadata": {
            "name": "example-thanos"
          },
          "spec": {
            "selector": {
              "matchLabels": {
                "mso": "example"
              }
            }
          }
        }
      ]
    capabilities: Basic Install
    categories: Monitoring
    certified: "false"
    containerImage: registry.redhat.io/cluster-observability-operator/cluster-observability-rhel9-operator@sha256:2dc10289333ba55999650bd6500bf1a77f1bd74a96df0deadec7cfac8d8dd8df
    createdAt: "2025-10-16T07:15:08Z"
    description: A Go based Kubernetes operator to setup and manage highly available
      Monitoring Stack using Prometheus, Alertmanager and Thanos Querier.
    features.operators.openshift.io/cnf: "false"
    features.operators.openshift.io/cni: "false"
    features.operators.openshift.io/csi: "false"
    features.operators.openshift.io/disconnected: "true"
    features.operators.openshift.io/fips-compliant: "false"
    features.operators.openshift.io/proxy-aware: "false"
    features.operators.openshift.io/tls-profiles: "false"
    features.operators.openshift.io/token-auth-aws: "false"
    features.operators.openshift.io/token-auth-azure: "false"
    features.operators.openshift.io/token-auth-gcp: "false"
    olm.operatorGroup: operator-sdk-og
    olm.operatorNamespace: coo
    olm.skipRange: '>=..0 <1.3.0'
    olm.targetNamespaces: ""
    operatorframework.io/cluster-monitoring: "true"
    operatorframework.io/properties: '{"properties":[{"type":"olm.gvk","value":{"group":"monitoring.rhobs","kind":"Alertmanager","version":"v1"}},{"type":"olm.gvk","value":{"group":"monitoring.rhobs","kind":"AlertmanagerConfig","version":"v1alpha1"}},{"type":"olm.gvk","value":{"group":"monitoring.rhobs","kind":"MonitoringStack","version":"v1alpha1"}},{"type":"olm.gvk","value":{"group":"monitoring.rhobs","kind":"PodMonitor","version":"v1"}},{"type":"olm.gvk","value":{"group":"monitoring.rhobs","kind":"Probe","version":"v1"}},{"type":"olm.gvk","value":{"group":"monitoring.rhobs","kind":"Prometheus","version":"v1"}},{"type":"olm.gvk","value":{"group":"monitoring.rhobs","kind":"PrometheusAgent","version":"v1alpha1"}},{"type":"olm.gvk","value":{"group":"monitoring.rhobs","kind":"PrometheusRule","version":"v1"}},{"type":"olm.gvk","value":{"group":"monitoring.rhobs","kind":"ScrapeConfig","version":"v1alpha1"}},{"type":"olm.gvk","value":{"group":"monitoring.rhobs","kind":"ServiceMonitor","version":"v1"}},{"type":"olm.gvk","value":{"group":"monitoring.rhobs","kind":"ThanosQuerier","version":"v1alpha1"}},{"type":"olm.gvk","value":{"group":"monitoring.rhobs","kind":"ThanosRuler","version":"v1"}},{"type":"olm.gvk","value":{"group":"observability.openshift.io","kind":"ObservabilityInstaller","version":"v1alpha1"}},{"type":"olm.gvk","value":{"group":"observability.openshift.io","kind":"UIPlugin","version":"v1alpha1"}},{"type":"olm.gvk","value":{"group":"perses.dev","kind":"Perses","version":"v1alpha1"}},{"type":"olm.gvk","value":{"group":"perses.dev","kind":"PersesDashboard","version":"v1alpha1"}},{"type":"olm.gvk","value":{"group":"perses.dev","kind":"PersesDatasource","version":"v1alpha1"}},{"type":"olm.package","value":{"packageName":"cluster-observability-operator","version":"1.3.0"}}]}'
    operatorframework.io/suggested-namespace: openshift-cluster-observability-operator
    operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine", "OpenShift
      Container Platform", "OpenShift Platform Plus"]'
    operators.operatorframework.io/builder: operator-sdk-v1.41.1
    operators.operatorframework.io/internal-objects: |-
      [
        "prometheuses.monitoring.rhobs",
        "alertmanagers.monitoring.rhobs",
        "thanosrulers.monitoring.rhobs",
        "prometheusagents.monitoring.rhobs",
        "perses.perses.dev"
      ]
    operators.operatorframework.io/project_layout: unknown
    repository: https://github.com/rhobs/observability-operator
    support: Cluster Observability (https://issues.redhat.com/projects/COO/)
  creationTimestamp: "2025-11-10T14:42:42Z"
  finalizers:
  - operators.coreos.com/csv-cleanup
  generation: 1
  labels:
    olm.managed: "true"
    operatorframework.io/arch.amd64: supported
    operatorframework.io/arch.arm64: supported
    operatorframework.io/arch.ppc64le: supported
    operatorframework.io/arch.s390x: supported
    operators.coreos.com/cluster-observability-operator.coo: ""
  name: cluster-observability-operator.v1.3.0
  namespace: coo
  resourceVersion: "81857"
  uid: e71690d7-1d95-4492-b625-7bcdf0d5ec49
spec:
  apiservicedefinitions: {}
  cleanup:
    enabled: false
  customresourcedefinitions:
    owned:
    - description: AlertmanagerConfig configures the Prometheus Alertmanager, specifying
        how alerts should be grouped, inhibited and notified to external systems
      displayName: AlertmanagerConfig
      kind: AlertmanagerConfig
      name: alertmanagerconfigs.monitoring.rhobs
      version: v1alpha1
    - description: Alertmanager describes an Alertmanager cluster
      displayName: Alertmanager
      kind: Alertmanager
      name: alertmanagers.monitoring.rhobs
      version: v1
    - description: MonitoringStack is the Schema for the monitoringstacks API
      displayName: MonitoringStack
      kind: MonitoringStack
      name: monitoringstacks.monitoring.rhobs
      version: v1alpha1
    - kind: ObservabilityInstaller
      name: observabilityinstallers.observability.openshift.io
      version: v1alpha1
    - description: Perses is the Schema for the perses API
      displayName: Perses
      kind: Perses
      name: perses.perses.dev
      version: v1alpha1
    - description: A Perses Dashboard
      displayName: Perses Dashboard
      kind: PersesDashboard
      name: persesdashboards.perses.dev
      version: v1alpha1
    - description: A Perses Datasource
      displayName: Perses Datasource
      kind: PersesDatasource
      name: persesdatasources.perses.dev
      version: v1alpha1
    - description: PodMonitor defines monitoring for a set of pods
      displayName: PodMonitor
      kind: PodMonitor
      name: podmonitors.monitoring.rhobs
      version: v1
    - description: Probe defines monitoring for a set of static targets or ingresses
      displayName: Probe
      kind: Probe
      name: probes.monitoring.rhobs
      version: v1
    - description: PrometheusAgent defines a Prometheus agent deployment
      displayName: PrometheusAgent
      kind: PrometheusAgent
      name: prometheusagents.monitoring.rhobs
      version: v1alpha1
    - description: Prometheus defines a Prometheus deployment
      displayName: Prometheus
      kind: Prometheus
      name: prometheuses.monitoring.rhobs
      version: v1
    - description: PrometheusRule defines recording and alerting rules for a Prometheus
        instance
      displayName: PrometheusRule
      kind: PrometheusRule
      name: prometheusrules.monitoring.rhobs
      version: v1
    - description: ScrapeConfig defines a namespaced Prometheus scrape_config to be
        aggregated across multiple namespaces into the Prometheus configuration
      displayName: ScrapeConfig
      kind: ScrapeConfig
      name: scrapeconfigs.monitoring.rhobs
      version: v1alpha1
    - description: ServiceMonitor defines monitoring for a set of services
      displayName: ServiceMonitor
      kind: ServiceMonitor
      name: servicemonitors.monitoring.rhobs
      version: v1
    - description: ThanosQuerier outlines the Thanos querier components, managed by
        this stack
      displayName: ThanosQuerier
      kind: ThanosQuerier
      name: thanosqueriers.monitoring.rhobs
      version: v1alpha1
    - description: ThanosRuler defines a ThanosRuler deployment
      displayName: ThanosRuler
      kind: ThanosRuler
      name: thanosrulers.monitoring.rhobs
      version: v1
    - description: UIPlugin defines a console plugin for observability
      displayName: UIPlugin
      kind: UIPlugin
      name: uiplugins.observability.openshift.io
      version: v1alpha1
  description: |-
    Cluster Observability Operator is a Go based Kubernetes operator to easily setup and manage various observability tools.
    ### Supported Features
    - Setup multiple Highly Available Monitoring stack using Prometheus, Alertmanager and Thanos Querier
    - Customizable configuration for managing Prometheus deployments
    - Customizable configuration for managing Alertmanager deployments
    - Customizable configuration for managing Thanos Querier deployments
    - Setup console plugins
    - Setup korrel8r
    - Setup Perses
    - Setup Cluster Health Analyzer
    ### Documentation
    - **[Documentation](https://docs.redhat.com/en/documentation/openshift_container_platform/latest/html/cluster_observability_operator/index)**
    ###  License
    Licensed under the [Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0)
  displayName: Cluster Observability Operator
  icon:
  - base64data: PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyBpZD0idXVpZC1kMWI4NDIzOC0wYzgxLTQ5MjctOGQ4Mi03OTcyN2Y5OGZjYWMiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDM4IDM4Ij4KPHRpdGxlPkNsdXN0ZXIgb2JzZXJ2YWJpbGl0eTwvdGl0bGU+CjxkZXNjPmNsb3VkPC9kZXNjPgo8bWV0YWRhdGE+PD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4KPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgOC4wLWMwMDEgMS4wMDAwMDAsIDAwMDAvMDAvMDAtMDA6MDA6MDAiPgogICA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPgogICAgICA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIgogICAgICAgICAgICB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOnRpZmY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vdGlmZi8xLjAvIgogICAgICAgICAgICB4bWxuczpkYz0iaHR0cDovL3B1cmwub3JnL2RjL2VsZW1lbnRzLzEuMS8iPgogICAgICAgICA8IS0tIG1ldGFkYXRhIGZpZWxkcyAtLT4KICAgICAgPC9yZGY6RGVzY3JpcHRpb24+CiAgIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+Cjw/eHBhY2tldCBlbmQ9InciPz48L21ldGFkYXRhPgo8ZGVmcz48c3R5bGU+LnV1aWQtMjRiMGQ5N2ItNjgxZS00ZGE2LWExYzctNzY3MWFlNTc1MzJhe2ZpbGw6I2UwZTBlMDt9LnV1aWQtMjRiMGQ5N2ItNjgxZS00ZGE2LWExYzctNzY3MWFlNTc1MzJhLC51dWlkLTk3YzFlYzg0LTliODEtNDU2ZS05OWFhLTcxMzc1MGViNjllMCwudXVpZC1mMDMyMTc4ZS1iZDUwLTRkZTctYjc3My02NjViZmQ1YzViYjgsLnV1aWQtNGJlZjgyMGItNTZjOS00N2U3LTgyYTMtMmRiOGQ4YzdiMTEye3N0cm9rZS13aWR0aDowcHg7fS51dWlkLTk3YzFlYzg0LTliODEtNDU2ZS05OWFhLTcxMzc1MGViNjllMHtmaWxsOiMwMDA7fS51dWlkLWYwMzIxNzhlLWJkNTAtNGRlNy1iNzczLTY2NWJmZDVjNWJiOHtmaWxsOiNlMDA7fS51dWlkLTRiZWY4MjBiLTU2YzktNDdlNy04MmEzLTJkYjhkOGM3YjExMntmaWxsOiNmZmY7fTwvc3R5bGU+PC9kZWZzPgo8cmVjdCBjbGFzcz0idXVpZC00YmVmODIwYi01NmM5LTQ3ZTctODJhMy0yZGI4ZDhjN2IxMTIiIHg9IjEiIHk9IjEiIHdpZHRoPSIzNiIgaGVpZ2h0PSIzNiIgcng9IjkiIHJ5PSI5Ii8+CjxwYXRoIGNsYXNzPSJ1dWlkLTI0YjBkOTdiLTY4MWUtNGRhNi1hMWM3LTc2NzFhZTU3NTMyYSIgZD0iTTI4LDIuMjVjNC4yNzM0LDAsNy43NSwzLjQ3NjYsNy43NSw3Ljc1djE4YzAsNC4yNzM0LTMuNDc2Niw3Ljc1LTcuNzUsNy43NUgxMGMtNC4yNzM0LDAtNy43NS0zLjQ3NjYtNy43NS03Ljc1VjEwYzAtNC4yNzM0LDMuNDc2Ni03Ljc1LDcuNzUtNy43NWgxOE0yOCwxSDEwQzUuMDI5NCwxLDEsNS4wMjk0LDEsMTB2MThjMCw0Ljk3MDYsNC4wMjk0LDksOSw5aDE4YzQuOTcwNiwwLDktNC4wMjk0LDktOVYxMGMwLTQuOTcwNi00LjAyOTQtOS05LTloMFoiLz4KPHBhdGggY2xhc3M9InV1aWQtZjAzMjE3OGUtYmQ1MC00ZGU3LWI3NzMtNjY1YmZkNWM1YmI4IiBkPSJNMjEuMzc1LDE5YzAsLjM0NTIuMjgwMy42MjUuNjI1LjYyNXMuNjI1LS4yNzk4LjYyNS0uNjI1YzAtMS45OTktMS42MjYtMy42MjUtMy42MjUtMy42MjUtLjM0NDcsMC0uNjI1LjI3OTgtLjYyNS42MjVzLjI4MDMuNjI1LjYyNS42MjVjMS4zMDk2LDAsMi4zNzUsMS4wNjU0LDIuMzc1LDIuMzc1WiIvPgo8cGF0aCBjbGFzcz0idXVpZC1mMDMyMTc4ZS1iZDUwLTRkZTctYjc3My02NjViZmQ1YzViYjgiIGQ9Ik0xOSwxMy4zNzVjLS43ODIyLDAtMS41MzkxLjE1NzctMi4yNS40NjgzLS4zMTY0LjEzODItLjQ2MDkuNTA2OC0uMzIyMy44MjMyLjEzNzcuMzE2NC41MDc4LjQ1ODUuODIyMy4zMjIzLjU1MjctLjI0MTIsMS4xNDE2LS4zNjM4LDEuNzUtLjM2MzgsMi40MTIxLDAsNC4zNzUsMS45NjI0LDQuMzc1LDQuMzc1cy0xLjk2MjksNC4zNzUtNC4zNzUsNC4zNzUtNC4zNzUtMS45NjI0LTQuMzc1LTQuMzc1YzAtLjYwODkuMTIyMS0xLjE5NzMuMzYzMy0xLjc0OTUuMTM4Ny0uMzE2NC0uMDA1OS0uNjg1MS0uMzIyMy0uODIzMi0uMzE0NS0uMTM5Mi0uNjgzNi4wMDU0LS44MjIzLjMyMjMtLjMxMTUuNzExNC0uNDY4OCwxLjQ2ODMtLjQ2ODgsMi4yNTA1LDAsMy4xMDE2LDIuNTIzNCw1LjYyNSw1LjYyNSw1LjYyNXM1LjYyNS0yLjUyMzQsNS42MjUtNS42MjUtMi41MjM0LTUuNjI1LTUuNjI1LTUuNjI1WiIvPgo8cGF0aCBjbGFzcz0idXVpZC05N2MxZWM4NC05YjgxLTQ1NmUtOTlhYS03MTM3NTBlYjY5ZTAiIGQ9Ik0zMC40NjY4LDE4LjczODhjLTIuMDU2Ni00LjQ3MzEtNi41NTc2LTcuMzYzOC0xMS40NjY4LTcuMzYzOHMtOS40MTAyLDIuODkwNi0xMS40NjY4LDcuMzYzOGMtLjA3NTIuMTY2LS4wNzUyLjM1NjQsMCwuNTIyNSwyLjA1NjYsNC40NzMxLDYuNTU3Niw3LjM2MzgsMTEuNDY2OCw3LjM2MzhzOS40MTAyLTIuODkwNiwxMS40NjY4LTcuMzYzOGMuMDc1Mi0uMTY2LjA3NTItLjM1NjQsMC0uNTIyNVpNMTksMjUuMzc1Yy00LjMyNjIsMC04LjMwMDgtMi40OTI3LTEwLjIwNjEtNi4zNzUsMS45MDUzLTMuODgyMyw1Ljg3OTktNi4zNzUsMTAuMjA2MS02LjM3NXM4LjMwMDgsMi40OTI3LDEwLjIwNjEsNi4zNzVjLTEuOTA1MywzLjg4MjMtNS44Nzk5LDYuMzc1LTEwLjIwNjEsNi4zNzVaIi8+CjxwYXRoIGNsYXNzPSJ1dWlkLTk3YzFlYzg0LTliODEtNDU2ZS05OWFhLTcxMzc1MGViNjllMCIgZD0iTTE1LjQ0MjQsMTQuNTU4MWMtLjI0NDEtLjI0NDEtLjY0MDYtLjI0NDEtLjg4NDgsMC0uMjQzMi4yNDQxLS4yNDMyLjYzOTYsMCwuODgzOGw0LDRjLjEyMjEuMTIyMS4yODIyLjE4MzEuNDQyNC4xODMxcy4zMjAzLS4wNjEuNDQyNC0uMTgzMWMuMjQzMi0uMjQ0MS4yNDMyLS42Mzk2LDAtLjg4MzhsLTQtNFoiLz4KPC9zdmc+Cg==
    mediatype: image/svg+xml
  install:
    spec:
      clusterPermissions:
      - rules:
        - apiGroups:
          - monitoring.rhobs
          resources:
          - alertmanagers
          - alertmanagers/finalizers
          - alertmanagers/status
          - alertmanagerconfigs
          - prometheuses
          - prometheuses/finalizers
          - prometheuses/status
          - prometheusagents
          - prometheusagents/finalizers
          - prometheusagents/status
          - thanosrulers
          - thanosrulers/finalizers
          - thanosrulers/status
          - scrapeconfigs
          - scrapeconfigs/status
          - servicemonitors
          - servicemonitors/status
          - podmonitors
          - podmonitors/status
          - probes
          - probes/status
          - prometheusrules
          verbs:
          - '*'
        - apiGroups:
          - apps
          resources:
          - statefulsets
          verbs:
          - '*'
        - apiGroups:
          - ""
          resources:
          - configmaps
          - secrets
          verbs:
          - '*'
        - apiGroups:
          - ""
          resources:
          - pods
          verbs:
          - list
          - delete
        - apiGroups:
          - ""
          resources:
          - services
          - services/finalizers
          verbs:
          - get
          - create
          - update
          - delete
        - apiGroups:
          - ""
          resources:
          - nodes
          verbs:
          - list
          - watch
        - apiGroups:
          - ""
          resources:
          - namespaces
          verbs:
          - get
          - list
          - watch
        - apiGroups:
          - ""
          resources:
          - events
          verbs:
          - patch
          - create
        - apiGroups:
          - networking.k8s.io
          resources:
          - ingresses
          verbs:
          - get
          - list
          - watch
        - apiGroups:
          - storage.k8s.io
          resources:
          - storageclasses
          verbs:
          - get
        - apiGroups:
          - ""
          resources:
          - endpoints
          verbs:
          - get
          - create
          - update
          - delete
        - apiGroups:
          - security.openshift.io
          resourceNames:
          - nonroot-v2
          - nonroot
          resources:
          - securitycontextconstraints
          verbs:
          - use
        serviceAccountName: obo-prometheus-operator
      - rules:
        - apiGroups:
          - security.openshift.io
          resourceNames:
          - nonroot-v2
          - nonroot
          resources:
          - securitycontextconstraints
          verbs:
          - use
        serviceAccountName: obo-prometheus-operator-admission-webhook
      - rules:
        - apiGroups:
          - ""
          resources:
          - configmaps
          - secrets
          - serviceaccounts
          - services
          verbs:
          - create
          - delete
          - get
          - list
          - patch
          - update
          - watch
        - apiGroups:
          - ""
          resources:
          - endpoints
          - events
          - namespaces
          - nodes
          - persistentvolumeclaims
          - persistentvolumes
          - pods
          - replicationcontrollers
          verbs:
          - get
          - list
          - watch
        - apiGroups:
          - ""
          resources:
          - services/finalizers
          verbs:
          - patch
          - update
        - apiGroups:
          - apps
          resources:
          - daemonsets
          - replicasets
          - statefulsets
          verbs:
          - get
          - list
          - watch
        - apiGroups:
          - apps
          resources:
          - deployments
          verbs:
          - create
          - delete
          - get
          - list
          - patch
          - update
          - watch
        - apiGroups:
          - authentication.k8s.io
          resources:
          - tokenreviews
          verbs:
          - create
        - apiGroups:
          - authorization.k8s.io
          resources:
          - subjectaccessreviews
          verbs:
          - create
        - apiGroups:
          - autoscaling
          resources:
          - horizontalpodautoscalers
          verbs:
          - get
          - list
          - watch
        - apiGroups:
          - batch
          resources:
          - cronjobs
          - jobs
          verbs:
          - get
          - list
          - watch
        - apiGroups:
          - config.openshift.io
          resources:
          - clusterversions
          verbs:
          - get
          - list
          - watch
        - apiGroups:
          - console.openshift.io
          resources:
          - consoleplugins
          verbs:
          - create
          - delete
          - get
          - list
          - patch
          - update
          - watch
        - apiGroups:
          - extensions
          - networking.k8s.io
          resources:
          - ingresses
          verbs:
          - get
          - list
          - watch
        - apiGroups:
          - loki.grafana.com
          resources:
          - application
          - audit
          - infrastructure
          - network
          verbs:
          - get
        - apiGroups:
          - loki.grafana.com
          resources:
          - lokistacks
          verbs:
          - get
          - list
        - apiGroups:
          - monitoring.coreos.com
          resourceNames:
          - main
          resources:
          - alertmanagers/api
          verbs:
          - get
          - list
        - apiGroups:
          - monitoring.coreos.com
          resourceNames:
          - k8s
          resources:
          - prometheuses/api
          verbs:
          - create
          - get
          - update
        - apiGroups:
          - monitoring.coreos.com
          resources:
          - servicemonitors
          verbs:
          - create
          - delete
          - get
          - list
          - patch
          - update
          - watch
        - apiGroups:
          - monitoring.rhobs
          resources:
          - alertmanagers
          - prometheuses
          - servicemonitors
          - thanosqueriers
          verbs:
          - create
          - delete
          - list
          - patch
          - update
          - watch
        - apiGroups:
          - monitoring.rhobs
          resources:
          - monitoringstacks
          verbs:
          - create
          - get
          - list
          - update
          - watch
        - apiGroups:
          - monitoring.rhobs
          resources:
          - monitoringstacks/finalizers
          - monitoringstacks/status
          verbs:
          - get
          - update
        - apiGroups:
          - monitoring.rhobs
          resources:
          - thanosqueriers/finalizers
          verbs:
          - update
        - apiGroups:
          - monitoring.rhobs
          resources:
          - thanosqueriers/status
          verbs:
          - get
          - patch
          - update
        - apiGroups:
          - networking.k8s.io
          resources:
          - ingresses
          - networkpolicies
          verbs:
          - get
          - list
          - watch
        - apiGroups:
          - observability.openshift.io
          resources:
          - observabilityinstallers
          - uiplugins
          verbs:
          - create
          - delete
          - get
          - list
          - patch
          - update
          - watch
        - apiGroups:
          - observability.openshift.io
          resources:
          - observabilityinstallers/finalizers
          - observabilityinstallers/status
          verbs:
          - delete
          - get
          - patch
          - update
        - apiGroups:
          - observability.openshift.io
          resources:
          - uiplugins/finalizers
          - uiplugins/status
          verbs:
          - get
          - update
        - apiGroups:
          - opentelemetry.io
          resources:
          - opentelemetrycollectors
          verbs:
          - create
          - delete
          - get
          - list
          - patch
          - update
          - watch
        - apiGroups:
          - opentelemetry.io
          resources:
          - opentelemetrycollectors/status
          verbs:
          - get
          - list
          - watch
        - apiGroups:
          - operator.openshift.io
          resources:
          - consoles
          verbs:
          - get
          - list
          - patch
          - watch
        - apiGroups:
          - operators.coreos.com
          resources:
          - clusterserviceversions
          - subscriptions
          verbs:
          - create
          - delete
          - get
          - list
          - patch
          - update
          - watch
        - apiGroups:
          - perses.dev
          resources:
          - perses
          - persesdashboards
          - persesdatasources
          verbs:
          - create
          - delete
          - get
          - list
          - patch
          - update
          - watch
        - apiGroups:
          - perses.dev
          resources:
          - perses/finalizers
          - persesdashboards/finalizers
          - persesdatasources/finalizers
          verbs:
          - update
        - apiGroups:
          - perses.dev
          resources:
          - perses/status
          - persesdashboards/status
          - persesdatasources/status
          verbs:
          - get
          - patch
          - update
        - apiGroups:
          - policy
          resources:
          - poddisruptionbudgets
          verbs:
          - create
          - delete
          - get
          - list
          - patch
          - update
          - watch
        - apiGroups:
          - rbac.authorization.k8s.io
          resources:
          - clusterrolebindings
          - clusterroles
          - rolebindings
          - roles
          verbs:
          - create
          - delete
          - get
          - list
          - patch
          - update
          - watch
        - apiGroups:
          - security.openshift.io
          resourceNames:
          - nonroot
          - nonroot-v2
          resources:
          - securitycontextconstraints
          verbs:
          - use
        - apiGroups:
          - storage.k8s.io
          resources:
          - storageclasses
          - volumeattachments
          verbs:
          - get
          - list
          - watch
        - apiGroups:
          - tempo.grafana.com
          resourceNames:
          - traces
          resources:
          - application
          verbs:
          - create
        - apiGroups:
          - tempo.grafana.com
          resources:
          - tempomonolithics
          verbs:
          - list
        - apiGroups:
          - tempo.grafana.com
          resources:
          - tempostacks
          verbs:
          - create
          - delete
          - get
          - list
          - patch
          - update
          - watch
        - apiGroups:
          - tempo.grafana.com
          resources:
          - tempostacks/status
          verbs:
          - get
          - list
          - watch
        serviceAccountName: observability-operator-sa
      - rules:
        - apiGroups:
          - apps
          resources:
          - deployments
          - statefulsets
          verbs:
          - create
          - delete
          - get
          - list
          - patch
          - update
          - watch
        - apiGroups:
          - ""
          resources:
          - events
          verbs:
          - create
          - patch
        - apiGroups:
          - ""
          resources:
          - services
          - configmaps
          - secrets
          verbs:
          - get
          - patch
          - update
          - create
          - delete
          - list
          - watch
        - apiGroups:
          - perses.dev
          resources:
          - perses
          verbs:
          - create
          - delete
          - get
          - list
          - patch
          - update
          - watch
        - apiGroups:
          - perses.dev
          resources:
          - perses/finalizers
          verbs:
          - update
        - apiGroups:
          - perses.dev
          resources:
          - perses/status
          verbs:
          - get
          - patch
          - update
        - apiGroups:
          - perses.dev
          resources:
          - persesdashboards
          verbs:
          - create
          - delete
          - get
          - list
          - patch
          - update
          - watch
        - apiGroups:
          - perses.dev
          resources:
          - persesdashboards/finalizers
          verbs:
          - update
        - apiGroups:
          - perses.dev
          resources:
          - persesdashboards/status
          verbs:
          - get
          - patch
          - update
        - apiGroups:
          - perses.dev
          resources:
          - persesdatasources
          verbs:
          - create
          - delete
          - get
          - list
          - patch
          - update
          - watch
        - apiGroups:
          - perses.dev
          resources:
          - persesdatasources/finalizers
          verbs:
          - update
        - apiGroups:
          - perses.dev
          resources:
          - persesdatasources/status
          verbs:
          - get
          - patch
          - update
        serviceAccountName: perses-operator
      deployments:
      - label:
          app.kubernetes.io/component: controller
          app.kubernetes.io/name: prometheus-operator
          app.kubernetes.io/part-of: observability-operator
          app.kubernetes.io/version: 0.86.1-rhobs1
        name: obo-prometheus-operator
        spec:
          replicas: 1
          selector:
            matchLabels:
              app.kubernetes.io/component: controller
              app.kubernetes.io/name: prometheus-operator
              app.kubernetes.io/part-of: observability-operator
          strategy: {}
          template:
            metadata:
              annotations:
                kubectl.kubernetes.io/default-container: prometheus-operator
                target.workload.openshift.io/management: '{"effect": "PreferredDuringScheduling"}'
              creationTimestamp: null
              labels:
                app.kubernetes.io/component: controller
                app.kubernetes.io/name: prometheus-operator
                app.kubernetes.io/part-of: observability-operator
                app.kubernetes.io/version: 0.86.1-rhobs1
            spec:
              affinity:
                nodeAffinity:
                  preferredDuringSchedulingIgnoredDuringExecution:
                  - preference:
                      matchExpressions:
                      - key: node-role.kubernetes.io/infra
                        operator: Exists
                    weight: 1
              automountServiceAccountToken: true
              containers:
              - args:
                - --prometheus-config-reloader=$(RELATED_IMAGE_PROMETHEUS_CONFIG_RELOADER)
                - --prometheus-instance-selector=app.kubernetes.io/managed-by=observability-operator
                - --alertmanager-instance-selector=app.kubernetes.io/managed-by=observability-operator
                - --thanos-ruler-instance-selector=app.kubernetes.io/managed-by=observability-operator
                env:
                - name: GOGC
                  value: "30"
                - name: RELATED_IMAGE_PROMETHEUS_CONFIG_RELOADER
                  value: registry.redhat.io/cluster-observability-operator/obo-prometheus-operator-prometheus-config-reloader-rhel9@sha256:32716857c0cfe90acb425f0c7dc0629536f40776878e24aac94719428a2b7de0
                image: registry.redhat.io/cluster-observability-operator/obo-prometheus-rhel9-operator@sha256:bfa2d7a400420d749944bcc5e80e0e3732a89e7642eca69882d33baadb85d339
                name: prometheus-operator
                ports:
                - containerPort: 8080
                  name: http
                  protocol: TCP
                resources:
                  limits:
                    cpu: 100m
                    memory: 500Mi
                  requests:
                    cpu: 5m
                    memory: 150Mi
                securityContext:
                  allowPrivilegeEscalation: false
                  capabilities:
                    drop:
                    - ALL
                  readOnlyRootFilesystem: true
                terminationMessagePolicy: FallbackToLogsOnError
              securityContext:
                runAsNonRoot: true
                runAsUser: 65534
              serviceAccountName: obo-prometheus-operator
              tolerations:
              - effect: NoSchedule
                key: node-role.kubernetes.io/infra
                operator: Exists
      - label:
          app.kubernetes.io/name: prometheus-operator-admission-webhook
          app.kubernetes.io/part-of: observability-operator
          app.kubernetes.io/version: 0.86.1-rhobs1
        name: obo-prometheus-operator-admission-webhook
        spec:
          replicas: 2
          selector:
            matchLabels:
              app.kubernetes.io/name: prometheus-operator-admission-webhook
              app.kubernetes.io/part-of: observability-operator
          strategy:
            rollingUpdate:
              maxUnavailable: 1
          template:
            metadata:
              annotations:
                kubectl.kubernetes.io/default-container: prometheus-operator-admission-webhook
              creationTimestamp: null
              labels:
                app.kubernetes.io/name: prometheus-operator-admission-webhook
                app.kubernetes.io/part-of: observability-operator
                app.kubernetes.io/version: 0.86.1-rhobs1
            spec:
              affinity:
                nodeAffinity:
                  preferredDuringSchedulingIgnoredDuringExecution:
                  - preference:
                      matchExpressions:
                      - key: node-role.kubernetes.io/infra
                        operator: Exists
                    weight: 1
                podAntiAffinity:
                  requiredDuringSchedulingIgnoredDuringExecution:
                  - labelSelector:
                      matchLabels:
                        app.kubernetes.io/name: prometheus-operator-admission-webhook
                        app.kubernetes.io/part-of: observability-operator
                    namespaces:
                    - default
                    topologyKey: kubernetes.io/hostname
              automountServiceAccountToken: false
              containers:
              - args:
                - --web.enable-tls=true
                - --web.cert-file=/tmp/k8s-webhook-server/serving-certs/tls.crt
                - --web.key-file=/tmp/k8s-webhook-server/serving-certs/tls.key
                image: registry.redhat.io/cluster-observability-operator/obo-prometheus-operator-admission-webhook-rhel9@sha256:3dcb5ae1524dfeb252487e585f42b48f39a9daec086ec8cb3589cccf96fd4ea2
                name: prometheus-operator-admission-webhook
                ports:
                - containerPort: 8443
                  name: https
                  protocol: TCP
                resources:
                  limits:
                    cpu: 200m
                    memory: 200Mi
                  requests:
                    cpu: 50m
                    memory: 50Mi
                securityContext:
                  allowPrivilegeEscalation: false
                  capabilities:
                    drop:
                    - ALL
                  readOnlyRootFilesystem: true
                terminationMessagePolicy: FallbackToLogsOnError
              securityContext:
                runAsNonRoot: true
                runAsUser: 65534
              serviceAccountName: obo-prometheus-operator-admission-webhook
              tolerations:
              - effect: NoSchedule
                key: node-role.kubernetes.io/infra
                operator: Exists
      - label:
          app.kubernetes.io/component: operator
          app.kubernetes.io/name: observability-operator
          app.kubernetes.io/version: 1.3.0
        name: observability-operator
        spec:
          replicas: 1
          selector:
            matchLabels:
              app.kubernetes.io/component: operator
              app.kubernetes.io/name: observability-operator
          strategy: {}
          template:
            metadata:
              creationTimestamp: null
              labels:
                app.kubernetes.io/component: operator
                app.kubernetes.io/name: observability-operator
                app.kubernetes.io/version: 1.3.0
            spec:
              affinity:
                nodeAffinity:
                  preferredDuringSchedulingIgnoredDuringExecution:
                  - preference:
                      matchExpressions:
                      - key: node-role.kubernetes.io/infra
                        operator: Exists
                    weight: 1
              containers:
              - args:
                - --namespace=$(NAMESPACE)
                - --images=perses=$(RELATED_IMAGE_PERSES)
                - --images=ui-dashboards=$(RELATED_IMAGE_CONSOLE_DASHBOARDS_PLUGIN)
                - --images=ui-distributed-tracing=$(RELATED_IMAGE_CONSOLE_DISTRIBUTED_TRACING_PLUGIN)
                - --images=ui-distributed-tracing-pf5=$(RELATED_IMAGE_CONSOLE_DISTRIBUTED_TRACING_PLUGIN_PF5)
                - --images=ui-distributed-tracing-pf4=$(RELATED_IMAGE_CONSOLE_DISTRIBUTED_TRACING_PLUGIN_PF4)
                - --images=ui-logging=$(RELATED_IMAGE_CONSOLE_LOGGING_PLUGIN)
                - --images=ui-logging-pf4=$(RELATED_IMAGE_CONSOLE_LOGGING_PLUGIN_PF4)
                - --images=ui-troubleshooting-panel=$(RELATED_IMAGE_CONSOLE_TROUBLESHOOTING_PANEL_PLUGIN)
                - --images=ui-monitoring=$(RELATED_IMAGE_CONSOLE_MONITORING_PLUGIN)
                - --images=ui-monitoring-pf5=$(RELATED_IMAGE_CONSOLE_MONITORING_PLUGIN_PF5)
                - --images=korrel8r=$(RELATED_IMAGE_KORREL8R)
                - --images=health-analyzer=$(RELATED_IMAGE_CLUSTER_HEALTH_ANALYZER)
                - --openshift.enabled=true
                env:
                - name: NAMESPACE
                  valueFrom:
                    fieldRef:
                      fieldPath: metadata.namespace
                - name: RELATED_IMAGE_ALERTMANAGER
                  value: registry.redhat.io/cluster-observability-operator/alertmanager-rhel9@sha256:b44334ba91927d8236260e3b54d532dc903099e8619239c1f91ada7525dfe9f9
                - name: RELATED_IMAGE_PROMETHEUS
                  value: registry.redhat.io/cluster-observability-operator/prometheus-rhel9@sha256:f60dcc9c533dd50cc3b4c07a353ce88e91f7c17de605cfa254f66e22c2494d92
                - name: RELATED_IMAGE_THANOS
                  value: registry.redhat.io/cluster-observability-operator/thanos-rhel9@sha256:1cd1d092c9ec011bdbf8bd2e574614ae9c98b430d87d7887a7c277d91cc46aae
                - name: RELATED_IMAGE_PERSES
                  value: registry.redhat.io/cluster-observability-operator/perses-rhel9@sha256:48a421e474aec1c64540757ae210d0c7c7bbdabd81de9723195a6c1af295976f
                - name: RELATED_IMAGE_CONSOLE_DASHBOARDS_PLUGIN
                  value: registry.redhat.io/cluster-observability-operator/dashboards-console-plugin-rhel9@sha256:93b4e19fef5f03eae74ac45e09d905aad240fd102a33511aeaae616268b932a3
                - name: RELATED_IMAGE_CONSOLE_DISTRIBUTED_TRACING_PLUGIN
                  value: registry.redhat.io/cluster-observability-operator/distributed-tracing-console-plugin-rhel9@sha256:959130cdcc69eecf35561409e68351d08b24f8a7c740b2c2ed71d91186659ec3
                - name: RELATED_IMAGE_CONSOLE_DISTRIBUTED_TRACING_PLUGIN_PF5
                  value: registry.redhat.io/cluster-observability-operator/distributed-tracing-console-plugin-pf5-rhel9@sha256:a6bc238bb24c5748356c11380a53dddddebef93d6627630a9a6c51ed75f7ccbd
                - name: RELATED_IMAGE_CONSOLE_DISTRIBUTED_TRACING_PLUGIN_PF4
                  value: registry.redhat.io/cluster-observability-operator/distributed-tracing-console-plugin-pf4-rhel9@sha256:8420c5793a61ac8c1b5d12ffb7cd2e6f393d5fdb256e1a81043b35f45c129084
                - name: RELATED_IMAGE_CONSOLE_LOGGING_PLUGIN
                  value: registry.redhat.io/cluster-observability-operator/logging-console-plugin-rhel9@sha256:a542155c413b594ea768dffb17f1af9e1bdeab82c770ca3221fae802d7d0a78e
                - name: RELATED_IMAGE_CONSOLE_LOGGING_PLUGIN_PF4
                  value: registry.redhat.io/cluster-observability-operator/logging-console-plugin-pf4-rhel9@sha256:6cf84afbc4e83cfe00643d14e99d054565c69804c7dca1e7410da7f96f2fcc54
                - name: RELATED_IMAGE_CONSOLE_TROUBLESHOOTING_PANEL_PLUGIN
                  value: registry.redhat.io/cluster-observability-operator/troubleshooting-panel-console-plugin-rhel9@sha256:479a8f17cc530afa2bb13a6d8a1605297141c1e3612a93d09365432ee732b94e
                - name: RELATED_IMAGE_CONSOLE_MONITORING_PLUGIN
                  value: registry.redhat.io/cluster-observability-operator/monitoring-console-plugin-rhel9@sha256:961703a6ac4098391b399e7332894ecafda38a35765cb9e440b047f0d08049cd
                - name: RELATED_IMAGE_CONSOLE_MONITORING_PLUGIN_PF5
                  value: registry.redhat.io/cluster-observability-operator/monitoring-console-plugin-pf5-rhel9@sha256:8fa07e65a5172ecbe91092d8a8586e2808a600ea89ee64f709516d3078437061
                - name: RELATED_IMAGE_KORREL8R
                  value: registry.redhat.io/cluster-observability-operator/korrel8r-rhel9@sha256:076fcf53fb9bd15984b5e2acda274d5d821259ee4ce70cd267c49802f087e12a
                - name: RELATED_IMAGE_CLUSTER_HEALTH_ANALYZER
                  value: registry.redhat.io/cluster-observability-operator/cluster-health-analyzer-rhel9@sha256:934cc6d7989964f914ad67290943694383ba5c8eb02ace10cbaab9614e668a88
                image: registry.redhat.io/cluster-observability-operator/cluster-observability-rhel9-operator@sha256:2dc10289333ba55999650bd6500bf1a77f1bd74a96df0deadec7cfac8d8dd8df
                imagePullPolicy: Always
                livenessProbe:
                  httpGet:
                    path: /healthz
                    port: 8081
                name: operator
                readinessProbe:
                  httpGet:
                    path: /healthz
                    port: 8081
                resources:
                  limits:
                    cpu: 400m
                    memory: 512Mi
                  requests:
                    cpu: 100m
                    memory: 256Mi
                securityContext:
                  allowPrivilegeEscalation: false
                  capabilities:
                    drop:
                    - ALL
                volumeMounts:
                - mountPath: /etc/tls/private
                  name: observability-operator-tls
                  readOnly: true
              securityContext:
                runAsNonRoot: true
              serviceAccountName: observability-operator-sa
              terminationGracePeriodSeconds: 30
              tolerations:
              - effect: NoSchedule
                key: node-role.kubernetes.io/infra
                operator: Exists
              volumes:
              - name: observability-operator-tls
                secret:
                  optional: true
                  secretName: observability-operator-tls
      - label:
          app.kubernetes.io/component: controller
          app.kubernetes.io/name: perses-operator
          app.kubernetes.io/part-of: observability-operator
        name: perses-operator
        spec:
          replicas: 1
          selector:
            matchLabels:
              app.kubernetes.io/component: controller
              app.kubernetes.io/name: perses-operator
              app.kubernetes.io/part-of: observability-operator
          strategy: {}
          template:
            metadata:
              annotations:
                kubectl.kubernetes.io/default-container: perses-operator
              creationTimestamp: null
              labels:
                app.kubernetes.io/component: controller
                app.kubernetes.io/name: perses-operator
                app.kubernetes.io/part-of: observability-operator
            spec:
              affinity:
                nodeAffinity:
                  preferredDuringSchedulingIgnoredDuringExecution:
                  - preference:
                      matchExpressions:
                      - key: node-role.kubernetes.io/infra
                        operator: Exists
                    weight: 1
              containers:
              - image: registry.redhat.io/cluster-observability-operator/perses-rhel9-operator@sha256:0eaab27a428f515985f4fbccb45a3ea52eb4aa264b3764035da18de530c2ea86
                livenessProbe:
                  httpGet:
                    path: /healthz
                    port: 8081
                  initialDelaySeconds: 15
                  periodSeconds: 20
                name: perses-operator
                readinessProbe:
                  httpGet:
                    path: /readyz
                    port: 8081
                  initialDelaySeconds: 5
                  periodSeconds: 10
                resources:
                  limits:
                    cpu: 500m
                    memory: 512Mi
                  requests:
                    cpu: 100m
                    memory: 128Mi
                securityContext:
                  allowPrivilegeEscalation: false
                  capabilities:
                    drop:
                    - ALL
                volumeMounts:
                - mountPath: /ca
                  name: openshift-service-ca
                  readOnly: true
              serviceAccountName: perses-operator
              tolerations:
              - effect: NoSchedule
                key: node-role.kubernetes.io/infra
                operator: Exists
              volumes:
              - configMap:
                  items:
                  - key: service-ca.crt
                    path: service-ca.crt
                  name: openshift-service-ca.crt
                  optional: true
                name: openshift-service-ca
    strategy: deployment
  installModes:
  - supported: false
    type: OwnNamespace
  - supported: false
    type: SingleNamespace
  - supported: false
    type: MultiNamespace
  - supported: true
    type: AllNamespaces
  keywords:
  - observability
  - monitoring
  - prometheus
  - thanos
  links:
  - name: GitHub
    url: https://github.com/rhobs/observability-operator
  maintainers:
  - email: jfajersk@redhat.com
    name: Jan Fajerski
  - email: spasquie@redhat.com
    name: Simon Pasquier
  maturity: alpha
  provider:
    name: Red Hat
  relatedImages:
  - image: registry.redhat.io/cluster-observability-operator/cluster-observability-rhel9-operator@sha256:2dc10289333ba55999650bd6500bf1a77f1bd74a96df0deadec7cfac8d8dd8df
    name: cluster-observability-operator
  - image: registry.redhat.io/cluster-observability-operator/obo-prometheus-operator-prometheus-config-reloader-rhel9@sha256:32716857c0cfe90acb425f0c7dc0629536f40776878e24aac94719428a2b7de0
    name: prometheus-config-reloader
  - image: registry.redhat.io/cluster-observability-operator/alertmanager-rhel9@sha256:b44334ba91927d8236260e3b54d532dc903099e8619239c1f91ada7525dfe9f9
    name: alertmanager
  - image: registry.redhat.io/cluster-observability-operator/prometheus-rhel9@sha256:f60dcc9c533dd50cc3b4c07a353ce88e91f7c17de605cfa254f66e22c2494d92
    name: prometheus
  - image: registry.redhat.io/cluster-observability-operator/thanos-rhel9@sha256:1cd1d092c9ec011bdbf8bd2e574614ae9c98b430d87d7887a7c277d91cc46aae
    name: thanos
  - image: registry.redhat.io/cluster-observability-operator/obo-prometheus-operator-admission-webhook-rhel9@sha256:3dcb5ae1524dfeb252487e585f42b48f39a9daec086ec8cb3589cccf96fd4ea2
    name: prometheus-operator-admission-webhook
  - image: registry.redhat.io/cluster-observability-operator/obo-prometheus-rhel9-operator@sha256:bfa2d7a400420d749944bcc5e80e0e3732a89e7642eca69882d33baadb85d339
    name: prometheus-operator
  - image: registry.redhat.io/cluster-observability-operator/dashboards-console-plugin-rhel9@sha256:93b4e19fef5f03eae74ac45e09d905aad240fd102a33511aeaae616268b932a3
    name: ui-dashboards
  - image: registry.redhat.io/cluster-observability-operator/distributed-tracing-console-plugin-rhel9@sha256:959130cdcc69eecf35561409e68351d08b24f8a7c740b2c2ed71d91186659ec3
    name: ui-tracing
  - image: registry.redhat.io/cluster-observability-operator/distributed-tracing-console-plugin-pf5-rhel9@sha256:a6bc238bb24c5748356c11380a53dddddebef93d6627630a9a6c51ed75f7ccbd
    name: ui-tracing-pf5
  - image: registry.redhat.io/cluster-observability-operator/distributed-tracing-console-plugin-pf4-rhel9@sha256:8420c5793a61ac8c1b5d12ffb7cd2e6f393d5fdb256e1a81043b35f45c129084
    name: ui-tracing-pf4
  - image: registry.redhat.io/cluster-observability-operator/logging-console-plugin-rhel9@sha256:a542155c413b594ea768dffb17f1af9e1bdeab82c770ca3221fae802d7d0a78e
    name: ui-logging
  - image: registry.redhat.io/cluster-observability-operator/logging-console-plugin-pf4-rhel9@sha256:6cf84afbc4e83cfe00643d14e99d054565c69804c7dca1e7410da7f96f2fcc54
    name: ui-logging-pf4
  - image: registry.redhat.io/cluster-observability-operator/troubleshooting-panel-console-plugin-rhel9@sha256:479a8f17cc530afa2bb13a6d8a1605297141c1e3612a93d09365432ee732b94e
    name: ui-troubleshooting
  - image: registry.redhat.io/cluster-observability-operator/monitoring-console-plugin-rhel9@sha256:961703a6ac4098391b399e7332894ecafda38a35765cb9e440b047f0d08049cd
    name: ui-monitoring
  - image: registry.redhat.io/cluster-observability-operator/monitoring-console-plugin-pf5-rhel9@sha256:8fa07e65a5172ecbe91092d8a8586e2808a600ea89ee64f709516d3078437061
    name: ui-monitoring-pf5
  - image: registry.redhat.io/cluster-observability-operator/korrel8r-rhel9@sha256:076fcf53fb9bd15984b5e2acda274d5d821259ee4ce70cd267c49802f087e12a
    name: korrel8r
  - image: registry.redhat.io/cluster-observability-operator/cluster-health-analyzer-rhel9@sha256:934cc6d7989964f914ad67290943694383ba5c8eb02ace10cbaab9614e668a88
    name: cluster-health-analyzer
  - image: registry.redhat.io/cluster-observability-operator/perses-rhel9@sha256:48a421e474aec1c64540757ae210d0c7c7bbdabd81de9723195a6c1af295976f
    name: perses
  - image: registry.redhat.io/cluster-observability-operator/perses-rhel9-operator@sha256:0eaab27a428f515985f4fbccb45a3ea52eb4aa264b3764035da18de530c2ea86
    name: perses-operator
  version: 1.3.0
  webhookdefinitions:
  - admissionReviewVersions:
    - v1
    containerPort: 443
    deploymentName: obo-prometheus-operator-admission-webhook
    failurePolicy: Ignore
    generateName: alertmanagerconfigs.monitoring.rhobs
    rules:
    - apiGroups:
      - monitoring.rhobs
      apiVersions:
      - '*'
      operations:
      - CREATE
      - UPDATE
      resources:
      - alertmanagerconfigs
      scope: Namespaced
    sideEffects: None
    targetPort: https
    timeoutSeconds: 5
    type: ValidatingAdmissionWebhook
    webhookPath: /admission-alertmanagerconfigs/validate
  - admissionReviewVersions:
    - v1
    containerPort: 443
    deploymentName: obo-prometheus-operator-admission-webhook
    failurePolicy: Ignore
    generateName: prometheusrules.monitoring.rhobs
    rules:
    - apiGroups:
      - monitoring.rhobs
      apiVersions:
      - '*'
      operations:
      - CREATE
      - UPDATE
      resources:
      - prometheusrules
      scope: Namespaced
    sideEffects: None
    targetPort: https
    timeoutSeconds: 5
    type: ValidatingAdmissionWebhook
    webhookPath: /admission-prometheusrules/validate
status:
  certsLastUpdated: "2025-11-10T14:42:59Z"
  certsRotateAt: "2027-11-09T14:42:57Z"
  cleanup: {}
  conditions:
  - lastTransitionTime: "2025-11-10T14:42:43Z"
    lastUpdateTime: "2025-11-10T14:42:43Z"
    message: requirements not yet checked
    phase: Pending
    reason: RequirementsUnknown
  - lastTransitionTime: "2025-11-10T14:42:43Z"
    lastUpdateTime: "2025-11-10T14:42:43Z"
    message: one or more requirements couldn't be found
    phase: Pending
    reason: RequirementsNotMet
  - lastTransitionTime: "2025-11-10T14:42:53Z"
    lastUpdateTime: "2025-11-10T14:42:53Z"
    message: all requirements found, attempting install
    phase: InstallReady
    reason: AllRequirementsMet
  - lastTransitionTime: "2025-11-10T14:42:57Z"
    lastUpdateTime: "2025-11-10T14:42:57Z"
    message: waiting for install components to report healthy
    phase: Installing
    reason: InstallSucceeded
  - lastTransitionTime: "2025-11-10T14:42:57Z"
    lastUpdateTime: "2025-11-10T14:43:00Z"
    message: 'installing: waiting for deployment obo-prometheus-operator to become
      ready: deployment "obo-prometheus-operator" not available: Deployment does not
      have minimum availability.'
    phase: Installing
    reason: InstallWaiting
  - lastTransitionTime: "2025-11-10T14:43:10Z"
    lastUpdateTime: "2025-11-10T14:43:10Z"
    message: install strategy completed with no errors
    phase: Succeeded
    reason: InstallSucceeded
  lastTransitionTime: "2025-11-10T14:43:10Z"
  lastUpdateTime: "2025-11-10T14:43:10Z"
  message: install strategy completed with no errors
  phase: Succeeded
  reason: InstallSucceeded
  requirementStatus:
  - group: apiextensions.k8s.io
    kind: CustomResourceDefinition
    message: CRD is present and Established condition is true
    name: alertmanagerconfigs.monitoring.rhobs
    status: Present
    uuid: 260b325e-d3c9-429b-b56a-96f3cf216f67
    version: v1
  - group: apiextensions.k8s.io
    kind: CustomResourceDefinition
    message: CRD is present and Established condition is true
    name: alertmanagers.monitoring.rhobs
    status: Present
    uuid: c3d7d4be-7e1e-4ae9-9b4b-69c32d4edbd8
    version: v1
  - group: apiextensions.k8s.io
    kind: CustomResourceDefinition
    message: CRD is present and Established condition is true
    name: monitoringstacks.monitoring.rhobs
    status: Present
    uuid: e5735259-7b4b-4551-bc6d-ee5ab5196276
    version: v1
  - group: apiextensions.k8s.io
    kind: CustomResourceDefinition
    message: CRD is present and Established condition is true
    name: observabilityinstallers.observability.openshift.io
    status: Present
    uuid: b8b553ff-9e93-4e20-8075-df6c705f8e5f
    version: v1
  - group: apiextensions.k8s.io
    kind: CustomResourceDefinition
    message: CRD is present and Established condition is true
    name: perses.perses.dev
    status: Present
    uuid: 1c93a0eb-658c-43cb-884d-0c7dc061c2ff
    version: v1
  - group: apiextensions.k8s.io
    kind: CustomResourceDefinition
    message: CRD is present and Established condition is true
    name: persesdashboards.perses.dev
    status: Present
    uuid: 1f75a308-81b4-4f76-8296-873a7da44d44
    version: v1
  - group: apiextensions.k8s.io
    kind: CustomResourceDefinition
    message: CRD is present and Established condition is true
    name: persesdatasources.perses.dev
    status: Present
    uuid: 5b62c0d1-3d74-45c1-b6b6-66069dbfd9f0
    version: v1
  - group: apiextensions.k8s.io
    kind: CustomResourceDefinition
    message: CRD is present and Established condition is true
    name: podmonitors.monitoring.rhobs
    status: Present
    uuid: 38511282-b05d-40c8-bd91-bcfc847d4741
    version: v1
  - group: apiextensions.k8s.io
    kind: CustomResourceDefinition
    message: CRD is present and Established condition is true
    name: probes.monitoring.rhobs
    status: Present
    uuid: feb0354e-97ad-48cc-bdc6-2311bcfd8216
    version: v1
  - group: apiextensions.k8s.io
    kind: CustomResourceDefinition
    message: CRD is present and Established condition is true
    name: prometheusagents.monitoring.rhobs
    status: Present
    uuid: 0c484476-771a-44d4-8de9-b6cc3e28d063
    version: v1
  - group: apiextensions.k8s.io
    kind: CustomResourceDefinition
    message: CRD is present and Established condition is true
    name: prometheuses.monitoring.rhobs
    status: Present
    uuid: 9ebe0632-9de2-4381-b1e9-d65235b60106
    version: v1
  - group: apiextensions.k8s.io
    kind: CustomResourceDefinition
    message: CRD is present and Established condition is true
    name: prometheusrules.monitoring.rhobs
    status: Present
    uuid: 8b558b37-1538-464e-a7b3-5881dbebf87d
    version: v1
  - group: apiextensions.k8s.io
    kind: CustomResourceDefinition
    message: CRD is present and Established condition is true
    name: scrapeconfigs.monitoring.rhobs
    status: Present
    uuid: 79dbf586-8774-43db-9c4b-79ccc585afc0
    version: v1
  - group: apiextensions.k8s.io
    kind: CustomResourceDefinition
    message: CRD is present and Established condition is true
    name: servicemonitors.monitoring.rhobs
    status: Present
    uuid: 4d3efe26-be34-4a44-823f-215661b71c35
    version: v1
  - group: apiextensions.k8s.io
    kind: CustomResourceDefinition
    message: CRD is present and Established condition is true
    name: thanosqueriers.monitoring.rhobs
    status: Present
    uuid: b49a5f10-8313-4d3c-a370-036dc58766f6
    version: v1
  - group: apiextensions.k8s.io
    kind: CustomResourceDefinition
    message: CRD is present and Established condition is true
    name: thanosrulers.monitoring.rhobs
    status: Present
    uuid: e8c5afa9-033e-4fe5-a27c-94239e33d545
    version: v1
  - group: apiextensions.k8s.io
    kind: CustomResourceDefinition
    message: CRD is present and Established condition is true
    name: uiplugins.observability.openshift.io
    status: Present
    uuid: dc7e39c4-a61b-419e-8927-e72c97a491f7
    version: v1
  - dependents:
    - group: rbac.authorization.k8s.io
      kind: PolicyRule
      message: cluster rule:{"verbs":["*"],"apiGroups":["monitoring.rhobs"],"resources":["alertmanagers","alertmanagers/finalizers","alertmanagers/status","alertmanagerconfigs","prometheuses","prometheuses/finalizers","prometheuses/status","prometheusagents","prometheusagents/finalizers","prometheusagents/status","thanosrulers","thanosrulers/finalizers","thanosrulers/status","scrapeconfigs","scrapeconfigs/status","servicemonitors","servicemonitors/status","podmonitors","podmonitors/status","probes","probes/status","prometheusrules"]}
      status: Satisfied
      version: v1
    - group: rbac.authorization.k8s.io
      kind: PolicyRule
      message: cluster rule:{"verbs":["*"],"apiGroups":["apps"],"resources":["statefulsets"]}
      status: Satisfied
      version: v1
    - group: rbac.authorization.k8s.io
      kind: PolicyRule
      message: cluster rule:{"verbs":["*"],"apiGroups":[""],"resources":["configmaps","secrets"]}
      status: Satisfied
      version: v1
    - group: rbac.authorization.k8s.io
      kind: PolicyRule
      message: cluster rule:{"verbs":["list","delete"],"apiGroups":[""],"resources":["pods"]}
      status: Satisfied
      version: v1
    - group: rbac.authorization.k8s.io
      kind: PolicyRule
      message: cluster rule:{"verbs":["get","create","update","delete"],"apiGroups":[""],"resources":["services","services/finalizers"]}
      status: Satisfied
      version: v1
    - group: rbac.authorization.k8s.io
      kind: PolicyRule
      message: cluster rule:{"verbs":["list","watch"],"apiGroups":[""],"resources":["nodes"]}
      status: Satisfied
      version: v1
    - group: rbac.authorization.k8s.io
      kind: PolicyRule
      message: cluster rule:{"verbs":["get","list","watch"],"apiGroups":[""],"resources":["namespaces"]}
      status: Satisfied
      version: v1
    - group: rbac.authorization.k8s.io
      kind: PolicyRule
      message: cluster rule:{"verbs":["patch","create"],"apiGroups":[""],"resources":["events"]}
      status: Satisfied
      version: v1
    - group: rbac.authorization.k8s.io
      kind: PolicyRule
      message: cluster rule:{"verbs":["get","list","watch"],"apiGroups":["networking.k8s.io"],"resources":["ingresses"]}
      status: Satisfied
      version: v1
    - group: rbac.authorization.k8s.io
      kind: PolicyRule
      message: cluster rule:{"verbs":["get"],"apiGroups":["storage.k8s.io"],"resources":["storageclasses"]}
      status: Satisfied
      version: v1
    - group: rbac.authorization.k8s.io
      kind: PolicyRule
      message: cluster rule:{"verbs":["get","create","update","delete"],"apiGroups":[""],"resources":["endpoints"]}
      status: Satisfied
      version: v1
    - group: rbac.authorization.k8s.io
      kind: PolicyRule
      message: cluster rule:{"verbs":["use"],"apiGroups":["security.openshift.io"],"resources":["securitycontextconstraints"],"resourceNames":["nonroot-v2","nonroot"]}
      status: Satisfied
      version: v1
    group: ""
    kind: ServiceAccount
    message: ""
    name: obo-prometheus-operator
    status: Present
    version: v1
  - dependents:
    - group: rbac.authorization.k8s.io
      kind: PolicyRule
      message: cluster rule:{"verbs":["use"],"apiGroups":["security.openshift.io"],"resources":["securitycontextconstraints"],"resourceNames":["nonroot-v2","nonroot"]}
      status: Satisfied
      version: v1
    group: ""
    kind: ServiceAccount
    message: ""
    name: obo-prometheus-operator-admission-webhook
    status: Present
    version: v1
  - dependents:
    - group: rbac.authorization.k8s.io
      kind: PolicyRule
      message: cluster rule:{"verbs":["create","delete","get","list","patch","update","watch"],"apiGroups":[""],"resources":["configmaps","secrets","serviceaccounts","services"]}
      status: Satisfied
      version: v1
    - group: rbac.authorization.k8s.io
      kind: PolicyRule
      message: cluster rule:{"verbs":["get","list","watch"],"apiGroups":[""],"resources":["endpoints","events","namespaces","nodes","persistentvolumeclaims","persistentvolumes","pods","replicationcontrollers"]}
      status: Satisfied
      version: v1
    - group: rbac.authorization.k8s.io
      kind: PolicyRule
      message: cluster rule:{"verbs":["patch","update"],"apiGroups":[""],"resources":["services/finalizers"]}
      status: Satisfied
      version: v1
    - group: rbac.authorization.k8s.io
      kind: PolicyRule
      message: cluster rule:{"verbs":["get","list","watch"],"apiGroups":["apps"],"resources":["daemonsets","replicasets","statefulsets"]}
      status: Satisfied
      version: v1
    - group: rbac.authorization.k8s.io
      kind: PolicyRule
      message: cluster rule:{"verbs":["create","delete","get","list","patch","update","watch"],"apiGroups":["apps"],"resources":["deployments"]}
      status: Satisfied
      version: v1
    - group: rbac.authorization.k8s.io
      kind: PolicyRule
      message: cluster rule:{"verbs":["create"],"apiGroups":["authentication.k8s.io"],"resources":["tokenreviews"]}
      status: Satisfied
      version: v1
    - group: rbac.authorization.k8s.io
      kind: PolicyRule
      message: cluster rule:{"verbs":["create"],"apiGroups":["authorization.k8s.io"],"resources":["subjectaccessreviews"]}
      status: Satisfied
      version: v1
    - group: rbac.authorization.k8s.io
      kind: PolicyRule
      message: cluster rule:{"verbs":["get","list","watch"],"apiGroups":["autoscaling"],"resources":["horizontalpodautoscalers"]}
      status: Satisfied
      version: v1
    - group: rbac.authorization.k8s.io
      kind: PolicyRule
      message: cluster rule:{"verbs":["get","list","watch"],"apiGroups":["batch"],"resources":["cronjobs","jobs"]}
      status: Satisfied
      version: v1
    - group: rbac.authorization.k8s.io
      kind: PolicyRule
      message: cluster rule:{"verbs":["get","list","watch"],"apiGroups":["config.openshift.io"],"resources":["clusterversions"]}
      status: Satisfied
      version: v1
    - group: rbac.authorization.k8s.io
      kind: PolicyRule
      message: cluster rule:{"verbs":["create","delete","get","list","patch","update","watch"],"apiGroups":["console.openshift.io"],"resources":["consoleplugins"]}
      status: Satisfied
      version: v1
    - group: rbac.authorization.k8s.io
      kind: PolicyRule
      message: cluster rule:{"verbs":["get","list","watch"],"apiGroups":["extensions","networking.k8s.io"],"resources":["ingresses"]}
      status: Satisfied
      version: v1
    - group: rbac.authorization.k8s.io
      kind: PolicyRule
      message: cluster rule:{"verbs":["get"],"apiGroups":["loki.grafana.com"],"resources":["application","audit","infrastructure","network"]}
      status: Satisfied
      version: v1
    - group: rbac.authorization.k8s.io
      kind: PolicyRule
      message: cluster rule:{"verbs":["get","list"],"apiGroups":["loki.grafana.com"],"resources":["lokistacks"]}
      status: Satisfied
      version: v1
    - group: rbac.authorization.k8s.io
      kind: PolicyRule
      message: cluster rule:{"verbs":["get","list"],"apiGroups":["monitoring.coreos.com"],"resources":["alertmanagers/api"],"resourceNames":["main"]}
      status: Satisfied
      version: v1
    - group: rbac.authorization.k8s.io
      kind: PolicyRule
      message: cluster rule:{"verbs":["create","get","update"],"apiGroups":["monitoring.coreos.com"],"resources":["prometheuses/api"],"resourceNames":["k8s"]}
      status: Satisfied
      version: v1
    - group: rbac.authorization.k8s.io
      kind: PolicyRule
      message: cluster rule:{"verbs":["create","delete","get","list","patch","update","watch"],"apiGroups":["monitoring.coreos.com"],"resources":["servicemonitors"]}
      status: Satisfied
      version: v1
    - group: rbac.authorization.k8s.io
      kind: PolicyRule
      message: cluster rule:{"verbs":["create","delete","list","patch","update","watch"],"apiGroups":["monitoring.rhobs"],"resources":["alertmanagers","prometheuses","servicemonitors","thanosqueriers"]}
      status: Satisfied
      version: v1
    - group: rbac.authorization.k8s.io
      kind: PolicyRule
      message: cluster rule:{"verbs":["create","get","list","update","watch"],"apiGroups":["monitoring.rhobs"],"resources":["monitoringstacks"]}
      status: Satisfied
      version: v1
    - group: rbac.authorization.k8s.io
      kind: PolicyRule
      message: cluster rule:{"verbs":["get","update"],"apiGroups":["monitoring.rhobs"],"resources":["monitoringstacks/finalizers","monitoringstacks/status"]}
      status: Satisfied
      version: v1
    - group: rbac.authorization.k8s.io
      kind: PolicyRule
      message: cluster rule:{"verbs":["update"],"apiGroups":["monitoring.rhobs"],"resources":["thanosqueriers/finalizers"]}
      status: Satisfied
      version: v1
    - group: rbac.authorization.k8s.io
      kind: PolicyRule
      message: cluster rule:{"verbs":["get","patch","update"],"apiGroups":["monitoring.rhobs"],"resources":["thanosqueriers/status"]}
      status: Satisfied
      version: v1
    - group: rbac.authorization.k8s.io
      kind: PolicyRule
      message: cluster rule:{"verbs":["get","list","watch"],"apiGroups":["networking.k8s.io"],"resources":["ingresses","networkpolicies"]}
      status: Satisfied
      version: v1
    - group: rbac.authorization.k8s.io
      kind: PolicyRule
      message: cluster rule:{"verbs":["create","delete","get","list","patch","update","watch"],"apiGroups":["observability.openshift.io"],"resources":["observabilityinstallers","uiplugins"]}
      status: Satisfied
      version: v1
    - group: rbac.authorization.k8s.io
      kind: PolicyRule
      message: cluster rule:{"verbs":["delete","get","patch","update"],"apiGroups":["observability.openshift.io"],"resources":["observabilityinstallers/finalizers","observabilityinstallers/status"]}
      status: Satisfied
      version: v1
    - group: rbac.authorization.k8s.io
      kind: PolicyRule
      message: cluster rule:{"verbs":["get","update"],"apiGroups":["observability.openshift.io"],"resources":["uiplugins/finalizers","uiplugins/status"]}
      status: Satisfied
      version: v1
    - group: rbac.authorization.k8s.io
      kind: PolicyRule
      message: cluster rule:{"verbs":["create","delete","get","list","patch","update","watch"],"apiGroups":["opentelemetry.io"],"resources":["opentelemetrycollectors"]}
      status: Satisfied
      version: v1
    - group: rbac.authorization.k8s.io
      kind: PolicyRule
      message: cluster rule:{"verbs":["get","list","watch"],"apiGroups":["opentelemetry.io"],"resources":["opentelemetrycollectors/status"]}
      status: Satisfied
      version: v1
    - group: rbac.authorization.k8s.io
      kind: PolicyRule
      message: cluster rule:{"verbs":["get","list","patch","watch"],"apiGroups":["operator.openshift.io"],"resources":["consoles"]}
      status: Satisfied
      version: v1
    - group: rbac.authorization.k8s.io
      kind: PolicyRule
      message: cluster rule:{"verbs":["create","delete","get","list","patch","update","watch"],"apiGroups":["operators.coreos.com"],"resources":["clusterserviceversions","subscriptions"]}
      status: Satisfied
      version: v1
    - group: rbac.authorization.k8s.io
      kind: PolicyRule
      message: cluster rule:{"verbs":["create","delete","get","list","patch","update","watch"],"apiGroups":["perses.dev"],"resources":["perses","persesdashboards","persesdatasources"]}
      status: Satisfied
      version: v1
    - group: rbac.authorization.k8s.io
      kind: PolicyRule
      message: cluster rule:{"verbs":["update"],"apiGroups":["perses.dev"],"resources":["perses/finalizers","persesdashboards/finalizers","persesdatasources/finalizers"]}
      status: Satisfied
      version: v1
    - group: rbac.authorization.k8s.io
      kind: PolicyRule
      message: cluster rule:{"verbs":["get","patch","update"],"apiGroups":["perses.dev"],"resources":["perses/status","persesdashboards/status","persesdatasources/status"]}
      status: Satisfied
      version: v1
    - group: rbac.authorization.k8s.io
      kind: PolicyRule
      message: cluster rule:{"verbs":["create","delete","get","list","patch","update","watch"],"apiGroups":["policy"],"resources":["poddisruptionbudgets"]}
      status: Satisfied
      version: v1
    - group: rbac.authorization.k8s.io
      kind: PolicyRule
      message: cluster rule:{"verbs":["create","delete","get","list","patch","update","watch"],"apiGroups":["rbac.authorization.k8s.io"],"resources":["clusterrolebindings","clusterroles","rolebindings","roles"]}
      status: Satisfied
      version: v1
    - group: rbac.authorization.k8s.io
      kind: PolicyRule
      message: cluster rule:{"verbs":["use"],"apiGroups":["security.openshift.io"],"resources":["securitycontextconstraints"],"resourceNames":["nonroot","nonroot-v2"]}
      status: Satisfied
      version: v1
    - group: rbac.authorization.k8s.io
      kind: PolicyRule
      message: cluster rule:{"verbs":["get","list","watch"],"apiGroups":["storage.k8s.io"],"resources":["storageclasses","volumeattachments"]}
      status: Satisfied
      version: v1
    - group: rbac.authorization.k8s.io
      kind: PolicyRule
      message: cluster rule:{"verbs":["create"],"apiGroups":["tempo.grafana.com"],"resources":["application"],"resourceNames":["traces"]}
      status: Satisfied
      version: v1
    - group: rbac.authorization.k8s.io
      kind: PolicyRule
      message: cluster rule:{"verbs":["list"],"apiGroups":["tempo.grafana.com"],"resources":["tempomonolithics"]}
      status: Satisfied
      version: v1
    - group: rbac.authorization.k8s.io
      kind: PolicyRule
      message: cluster rule:{"verbs":["create","delete","get","list","patch","update","watch"],"apiGroups":["tempo.grafana.com"],"resources":["tempostacks"]}
      status: Satisfied
      version: v1
    - group: rbac.authorization.k8s.io
      kind: PolicyRule
      message: cluster rule:{"verbs":["get","list","watch"],"apiGroups":["tempo.grafana.com"],"resources":["tempostacks/status"]}
      status: Satisfied
      version: v1
    group: ""
    kind: ServiceAccount
    message: ""
    name: observability-operator-sa
    status: Present
    version: v1
  - dependents:
    - group: rbac.authorization.k8s.io
      kind: PolicyRule
      message: cluster rule:{"verbs":["create","delete","get","list","patch","update","watch"],"apiGroups":["apps"],"resources":["deployments","statefulsets"]}
      status: Satisfied
      version: v1
    - group: rbac.authorization.k8s.io
      kind: PolicyRule
      message: cluster rule:{"verbs":["create","patch"],"apiGroups":[""],"resources":["events"]}
      status: Satisfied
      version: v1
    - group: rbac.authorization.k8s.io
      kind: PolicyRule
      message: cluster rule:{"verbs":["get","patch","update","create","delete","list","watch"],"apiGroups":[""],"resources":["services","configmaps","secrets"]}
      status: Satisfied
      version: v1
    - group: rbac.authorization.k8s.io
      kind: PolicyRule
      message: cluster rule:{"verbs":["create","delete","get","list","patch","update","watch"],"apiGroups":["perses.dev"],"resources":["perses"]}
      status: Satisfied
      version: v1
    - group: rbac.authorization.k8s.io
      kind: PolicyRule
      message: cluster rule:{"verbs":["update"],"apiGroups":["perses.dev"],"resources":["perses/finalizers"]}
      status: Satisfied
      version: v1
    - group: rbac.authorization.k8s.io
      kind: PolicyRule
      message: cluster rule:{"verbs":["get","patch","update"],"apiGroups":["perses.dev"],"resources":["perses/status"]}
      status: Satisfied
      version: v1
    - group: rbac.authorization.k8s.io
      kind: PolicyRule
      message: cluster rule:{"verbs":["create","delete","get","list","patch","update","watch"],"apiGroups":["perses.dev"],"resources":["persesdashboards"]}
      status: Satisfied
      version: v1
    - group: rbac.authorization.k8s.io
      kind: PolicyRule
      message: cluster rule:{"verbs":["update"],"apiGroups":["perses.dev"],"resources":["persesdashboards/finalizers"]}
      status: Satisfied
      version: v1
    - group: rbac.authorization.k8s.io
      kind: PolicyRule
      message: cluster rule:{"verbs":["get","patch","update"],"apiGroups":["perses.dev"],"resources":["persesdashboards/status"]}
      status: Satisfied
      version: v1
    - group: rbac.authorization.k8s.io
      kind: PolicyRule
      message: cluster rule:{"verbs":["create","delete","get","list","patch","update","watch"],"apiGroups":["perses.dev"],"resources":["persesdatasources"]}
      status: Satisfied
      version: v1
    - group: rbac.authorization.k8s.io
      kind: PolicyRule
      message: cluster rule:{"verbs":["update"],"apiGroups":["perses.dev"],"resources":["persesdatasources/finalizers"]}
      status: Satisfied
      version: v1
    - group: rbac.authorization.k8s.io
      kind: PolicyRule
      message: cluster rule:{"verbs":["get","patch","update"],"apiGroups":["perses.dev"],"resources":["persesdatasources/status"]}
      status: Satisfied
      version: v1
    group: ""
    kind: ServiceAccount
    message: ""
    name: perses-operator
    status: Present
    version: v1
